2023/04 7

스프링 core [1]-개요

스프링 core 테크놀로지 특징: 1. IOC 등록을 하면 관리를 컨테이너가 해준다. (생성 , 호출, 소멸에 관한 모든 것. ) IoC Container - 제어의 역전: 개발자가 주도하는게 아니라 프레임워크 안에서 관리를 수행한다. DI: 의존성 주입 : 제어의 역전을 위해서 의존성 주입을 재주어야 한다. 결합도 낮춤. 예시 그림 설명. 스프링한테 맡긴 객체= 빈 빈을 관리해주는 = 빈 팩토리 (인터페이스) ApplicationContext= 우리가 실제로 이용하게 될 객체. 2. AOP(Aspect Oriented Programming) 관점 지향 프로그래밍 - oop를 더욱 좋은 oop로 만들어주는 기능 vs oop 객체 지향 프로그래밍 1.중복 코드 제거 3.Portable Service Abs..

스프링 2023.04.14

JPA 1:1 관계

-한쪽이 pk 한쪽이 FK인 경우 -한쪽이 pk 한쪽이 PFK 인 경우 테이블 생성 1) 1:1관계 user-fk와 usertinfo ->pk 2)양방향 참조관계 상호 연관관계를 가진다면 user가 연관관계의 주인일 것이다. 3. user info / user 둘다 user_code가 pk이다. 그리고 userinfo가 fk를 가지고있다. 주테이블과 대상테이블이 무엇인가? 마지막 케이스는 솔직히 잘 이해가 안된다. (04-12 1교시)

카테고리 없음 2023.04.12

열거형(enum)

똑같은데 훨씬 편하다. -숫자도 자동으로 매겨진다. -상수타입을 앞에 굳이 서술할 필요도 없다. JAVA는 타입에 안전한 열거형을 제공 -> 값뿐만 아니라 타입도 체크한다. =========================================================================================== 비교 연산자 사용 불가 따라서 compareto( ) 를 사용한다. 왼쪽이 크면 양수/ 같으면 0/ 오른쪽이 크면 음수 비교연산자가 사용 불가능한 이유는 객체값이기 떄문이다. ============================================================================================ - values(), valueO..

카테고리 없음 2023.04.12

JPA[Day2] 엔티티 ,컬럼, 프라이머리키

1. 엔티티 Member 지금 우리가 사용하는 테이블에는 없는 테이블이다. 그럴떄 엔티티로 만들어주면 자동으로 DB에 생성된다. 1-1 DML은 commit하지 않으면 rollback되지만 DDL은 autocommit 구문이기 떄문에 별돌의 commit없어도 생성되어 반영된다. 생성 된 자료형은 java object 의 자료형을 따르며 크기를 따로 성정하지 않을 경우 숫자는 nulber(10,0), 문자열은 carchar2(255 char) 로 설정 된다. 생성 되는 컬럼의 순서는 pk가 우선이며, 일반 컬럼은 유니코드 오름차순으로 생성 된다. 2.컬럼 컬럼별로 할 수 있는 설정값들이 있음을 기억하고 유의하자. @Column(name="MEMBER_PWD") private String memberPwd;..

카테고리 없음 2023.04.12

JPA[day2]- EntityManagerCRUDTests

조건: Menu라는 객체가 있다. 그리고 엔티티로 등록한다. 메뉴코드로 _메뉴_조회_테스트(){ //given int menuCode=2; //when //entityManager의 조회기능은 find 메소드 통해서 가능 //어떤객체(1) , 2번인객체를 찾아와라(2) Menu foundMenu=entityManager.find(Menu.class, menuCode); //then // assertNotNull(foundMenu); //null 여부 확인 assertEquals(menuCode, foundMenu.getMenuCode()); //같은거냐 안 같냐 확인 System.out.println("foundMenu="+foundMenu); /*@조회@*/ find 메소드로 가져와서 조회하면 된다. ..

카테고리 없음 2023.04.11

JPA [1day]

jpa 개요 'p': 영속성 , 영속성 프레임워크 : 데이터의 조회, 조회, 변경, 삭제와 관련된 프레임 워크 'j' 자바에서 구현하는 직접SQL을 작성하지 않아도, 테이블 관계 설정만 해줘도 자동으로 생성된다는 것이 마이바티스랑 가장 큰 차이 이를 ORM 기술이라고한다. :"객체 관계 매핑 " 자바에서 사용하는 "ORM "을 JPA 이다. 사용하는 기술은 HIBERNATE JPA의 특징 * 영속성 컨텍스트가 엔티티를 생명주기를 통해 관리한다. * NATIVE SQL을 통해서 직접 SQL을 해당 DB에 맞게 작성할 수도 있다. * DBMS별로 dialect를 제공한다. ex) 오라클-> mysql -> db 구문 테이블 변경할때 별도 작업없이 호환이 가능하다. * /* JPA는 데이터베이스에 저장하고 사..

카테고리 없음 2023.04.11

[2023-04-04] 자바 보충 수업 인터페이스

1. 개발시간을 단축시킬 수 있다. : A클래스에 B라는 객체를 주입하려면 B라는 클래스가 먼저 구현되어야 A작업을 진행 할 수 있다. 하지만 그렇게 동시에 이뤄지지 않기 떄문에 B를 둘러싼 인터페이스의 객체를 가정하고 주입하고 작업할 수 있다. 2. 표준화가 가능하다. 마이 SQL 에서 오라클 오라클에서 마이 SQL 로 연결을 할떄마다 메소드 형식을 바꿨다. 굉장히 비효율이적이고 자바에서 인터페이스를 통해서 규격을 만들어서 반드시 규격에 맞게 사용할 수 있도록 한다. 3. 서로 관계 없는 클래스에게 관계를 맺어 줄 수 있다. 4. 독립적인 프로그래밍이 가능하다. 5. 유연한 코드 ,변경에 유리한 설계가 가능하다.

카테고리 없음 2023.04.04