Dev 33

[Spring Boot] @Controller @RestController 차이

Spring MVC Framework and REST Spring의 어노테이션 기반 MVC 프레임 워크는 RESTful 웹 서비스 생성 프로세스를 단순화한다. 전통적인 Spring MVC 컨트롤러와 RESTful 웹 서비스 컨트롤러의 주요 차이점은 http 응답 본문이 생성되는 방식이다. 기존 MVC 컨트롤러는 View 기술에 의존하지만 RESTful 웹 서비스 컨트롤러는 단순히 객체를 반환하고 객체 데이터는 json/xml로 http 응답에 직접 작성된다. 출처 https://www.genuitec.com/spring-frameworkrestcontroller-vs-controller/ Spring Framework: @RestController vs @Controller - Genuitec In th..

Dev 2019.12.16

[jpa] 주요키를 공유하는 일대일 단방향 연관

5. [jpa] 주요키 공유 일대일 단방향 연관public class Traveler { @Id private String email; private String name; }public class TravelerBestSight { @Id private String email; private String title; private String description; @OneToOne @PrimaryKeyJoinColumn private Traveler traveler; }@Test public void 주요키를공유하는일대일단방향테스트() { String email = "ryan@naver.com"; // Traveler 생성 Traveler traveler = Traveler.builder() .ema..

Dev 2019.03.05

[jpa] 참조키를 이용한 1:1 양방향 연관 - Lazy Loading

4. [jpa] 1:1 양방향 연관 - Lazy Loadingpublic class Member { @Id private String email; private String name; @Temporal(TemporalType.DATE) private Date createdDate; @OneToOne(mappedBy = "owner", fetch = FetchType.LAZY) private MembershipCard membershipCard; } @Test public void 참조키를이용한일대일양방향연관레이지로딩() { // 1. 생성된 멤버는 아직 MembershipCard 가 존재하지 않음 Optional member = memberRepository.findById(email); assertTh..

Dev 2019.03.03

[jpa] 참조키를 이용한 1:1 양방향 연관

3. [jpa] 1:1 양방향 연결Member 측에서도 MemebershipCard 정보를 갖기 위해 연결 정보를 설정public class Member { @Id private String email; private String name; @Temporal(TemporalType.DATE) private Date createdDate; @OneToOne(mappedBy = "owner") private MembershipCard membershipCard; } @Test public void 참조키를이용한일대일양방향연관() { // 1. 생성된 멤버는 아직 MembershipCard 가 존재하지 않음 Optional member = memberRepository.findById(email); asser..

Dev 2019.03.03

[jpa] 참조키를 이용한 1:1 단방향 연관 - Lazy Loading

2. [jpa] 1:1 단방향 연결 - Lazy LoadingMembershipCard 조회시 Member 에 엑세스 하지 않는다면 Lazy Loading 을 사용할 수 있다.public class MembershipCard { @Id @Column(name = "card_number") private String number; @OneToOne(fetch = FetchType.LAZY) @JoinColumn(name = "member_email") private Member owner; @Temporal(TemporalType.DATE) @Column(name = "expiry_date") private Date expiryDate; protected boolean enabled; }@Test publ..

Dev 2019.03.03

[jpa] 참조키를 이용한 1:1 단방향 연관

jpa 책을 두번이나 읽었는데 1년 지나니 거의 백지 상태라 기록차 포스팅 시전1. [jpa] 1:1 단방향 연결123456789public class Member { @Id private String email; private String name; @Temporal(TemporalType.DATE) private Date createdDate;} Colored by Color Scriptercs 12345678910111213141516public class MembershipCard { @Id @Column(name = "card_number") private String number; @OneToOne @JoinColumn(name = "member_email") private Member own..

Dev 2019.03.02