2018-6-11 포비 강의
- Servlet이 HTTP에 대한 구현이다. 이것에 대한 구현은 Tomcat안에 인터페이스에 대한 구현체들이 들어가있다.
- 톰캣을 와스?라고 한다.
- JPA에는 이 표준을 지키는 Hibernate라는 프레임워크가 있다.
- Servlet의 구현체는 무조건 와스내에 있다. 와스는 톰캣, 제티라고 한다.
- 와스는 웹어플리케이션서버의 줄인말이다.
- 인터페이스 어노테이션 기능을 조합을 해서 표준(기준점)을 만든다.
- Servlet이 HTTP데이터를 조작을 하는 역할을 한다.
의존관계
- Question -> User : 객체에 의존을 한다. Question은 User객체에 대한 정보를 가지고 있어야 의미가 있어진다. 하지만 User는 Question에 대한 정보가 없다. 이런관계를 UniDirection이라고한다.
- Quesion <–> Answer : 이런관계는 양방향 BiDirection이라고한다.
- 양뱡향으로 의존을 하다보면 의존관계가 많아져서 힘들다. 그러므로 최소화를 하고, 되도록이면 UniDirection의 관계를 한다.
- Bidirection을 사용을 하면 코드가 깔끔해지지만, 그럼에도 불구하고 UniDirection을 사용을 하는것이 좋다.
FetchType
- FetchType.EAGER : 즉시 로딩으로 엔티티를 조회할 때 연관된 엔티티도 함께 조회. @OneToOne, @ManyToOne 기본. JPA는 가능하면 join 쿼리 사용
-
FetchType.LAZY : 지연 로딩으로 연관된 엔티티를 실제 사용할 때 조회. @OneToMany, @ManyToMany 기본
- ORM은 기본적으로 캐시를 제공하고 있다.
- 캐시를 많이 써야 성능이 나온다.
- CASCADE가 없으면 변경사항에 대한 부분이 자동으로 반영이 안된다. 하지만 CASCADE를 설정하면 변경사항에 대한 부분이 자동으로 변경이 된다.
Written on June 11, 2018