목록분류 전체보기 (50)
에러 안나게 해주세요
연관관계 매핑시 고려사항 3가지 - 다중성 - 단방향, 양방향 - 연관관계의 주인 다중성 - 다대일 : @ManyToOne - 일대다 : @OneToMany - 일대일 : @OneToOne - 다대다 : @ManyToMany JPA에서 나오는 애노테이션은 전부 DB의 관점. 애매 할 때는 반대쪽으로 생각해 볼 것 ex) 회원과 팀의 관계 단방향, 양방향 테이블 - 외래키 하나로 양쪽 조인 가능 - 사실 방향이라는 개념이 없음 객체 - 참조용 필드가 있는 쪽으로만 참조 가능 - 한쪽만 참조하면 단방향 - 양쪽이 서로 참조하면 양방향 연관관계의 주인 - 테이블은 외래 키 하나로 두 테이블이 연관관계를 맺음 - 객체 양방향 관계는 A->B, B->A 처럼 참조가 2군데 - 객체 양방향 관계는 참조가 2군데 있..

HyperText Transfer Protocol - HTML, TEXT - IMAGE, 음성, 영상, 파일 - JSON, XML (API) - 거의 모든 형태의 데이터 전송 가능 - 서버간에 데이터를 주고 받을 때도 대부분 HTTP 사용 - 지금은 HTTP 시대! HTTP 역사 - HTTP/0.9 1991년: GET 메서드만 지원, HTTP 헤더 X - HTTP/1.0 1996년: 메서드, 헤더 추가 - HTTP/1.1 1997년: 가장 많이 사용, 우리에게 가장 중요한 버전 - HTTP/2 2015년 : 성능 개선 - HTTP/3 진행중: TCP 대신에 UDP 사용, 성능 개선 기반 프로토콜 - TCP : HTTP/1.1, HTTP/2 - UDP : HTTP/3 - 현재 HTTP/1.1 주로 사용 >..
양방향 매핑시 가장 많이 하는 실수 ( 연관관계의 주인에 값을 입력하지 않음 ) Team team = new Team(); team.setName("TeamA"); em.persist(team); Member member = new Member(); member.setName("member1"); //역방향(주인이 아닌 방향)만 연관관계 설정 team.getMembers().add(member); em.persist(member); 양방향 연관관계 주의 - 실습 - 순수 객체 상태를 고려해서 항상 양쪽에 값을 설정하자. Team team = new Team(); team.setName("TeamA"); em.persist(team); Member member = new Member(); member.se..

- mappedBy = JPA의 멘탈붕괴 난이도 - mappedBy는 처음에는 이해하기 어렵다. - 객체와 테이블간에 연관관계를 맺는 차이를 이해해야 한다. 객체와 테이블이 관계를 맺는 차이 - 객체 연관관계 = 2개 >> 회원 -> 팀 연관관계 1개 (단방향) >> 팀 -> 회원 연관관계 1개 (단방향) - 테이블 연관관계 = 1개 >> 회원 팀의 연관관계 1개 (양방향) 객체의 양방향 관계 - 객체의 양방향 관계는 사실 양방향 관계가 아니라 서로 다른 방향 관계 2개다. - 객체를 양방향으로 참조하려면, 단방향 연관관계를 2개 만들어야 한다. - A -> B (a.getB()) class A { B b; } - B -> A (b.getA()) class B { A a; } - 테이블은 외래 키 하나로..

목표 - 객체와 테이블 연관관계의 차이를 이해 - 객체의 참조와 테이블의 외래 키를 매핑 - 용어 이해 >> 방향(Direction) : 단방향 , 양방향 >> 다중성(Multiplicity) : 다대일(N:1),일대다(1:N),일대일(1:1),다대다(N:M) 이해 >> 연관관계의 주인(Owner): 객체 양방향 연관관계는 관리 필요 객체 지향 모델링 (객체 연관관계 사용) @Entity public class Member { @Id @GeneratedValue @Column(name = "MEMBER_ID") private Long id; @Column(name = "USERNAME") private String username; // @Column(name = "TEAM_ID") // private ..

URI? URL? URN? -URI는 로케이터(locaator), 이름(name) 또는 둘 다 추가로 분류될 수 있다. URI 단어 뜻 - Uniform : 리소스 식별하는 통일된 방식 - Resource : 자원, URL로 식별할 수 있는 모든 것 (제한없음) - Identifier : 다른 항목과 구분하는데 필요한 정보 URL, URN 단어 뜻 - URL - Locator : 리소스가 있는 위치를 지정 - URN - Name : 리소스에 이름을 부여 - 위치는 변할 수 있지만, 이름은 변하지 않는다. - urn:isbn:896777331 (어떤 책의 isbn URN) - URN 이름만으로 실제 리소스를 찾을 수 있는 방법이 보편화 되지 않음. scheme://[userinfo@]host:[:port]..
@Id private String id; - 직접 할당 : @Id만 사용 - 자동 생성(@GenerateValue) >> DENTITY: 데이터베이스에 위임, MYSQL >> SEQUENCE: 데이터베이스 시퀀스 오브젝트 사용, ORACLE :: @SequenceGenerator 필요 >> TABLE: 키 생성용 테이블 사용, 모든 DB에서 사용 :: @TableGenerator 필요 >> AUTO: 방언에 따라 자동 지정, 기본값 @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private String id; IDENTITY 전략 - 특징 - 기본 키 생성을 데이터베이스에 위임 - 주로 MySQL, PostgreSQL, SQL Server, DB2에..