목록JPA (6)
LUMI_dev

객체의 참조와 테이블의 외래키 매핑연관관계의 주인 - C언어의 포인터 같음 1. 단방향 연관 관계 Member.java@Entity public class Member { @Id @GeneratedValue // (@GeneratedValue는 auto 모드) @Column(name = "MEMBER_ID") private Long id; @Column(name = "USERNAME") private String name; @Column(name = "TEAM_ID") private Long teamId; … } @Entity public class Team { @Id @GeneratedValue ..

테이블 설계 멤버가 orders랑 1대 n관계 STATUS : 주문 시간 주문의 상태 ( 고객이 뭘 결제했다 / 배송 취소 / 결제 등) 엔티티 설계 (문제 있는 방법) 새 프로젝트 만들기 org.springframework.boot spring-boot-starter org.springframework.boot spring-boot-starter-test test org.hibernate hibernate-entitymanager 5.3.10.Final c..

엔티티 맵핑 객체 & 테이블 > 필드 & 컬럼 > 기본 키 > 연관관계 1. 객체와 테이블 매핑 JPA로 테이블과 매핑할 클래스는 @Entity 필수기본 생성자 필수 (파라메터 없는 public or protected 생성자)final, enum,interface,inner 클래스 사용 x (@Entity로 맵핑할 수 없음) 저장할 필드에 final 사용 x @Entity 속성 정리 name @Table (name = "MBR")엔티티와 매핑할 테이블 지정지정하면 insert in to MBR -> 지정한 테이블로 쿼리가 나감 데이터베이스 스키마 자동 생성DDL을 애플리케이션 실행 시점에 자동 생성: 애플리케이션 생성 시점에 create 문으로 테이블 생성하는 기능 지원테이블 -> 객체 중..

JPA에서 가장 중요한 2가지객체와 관계형 데이터베이스 매핑하기 (Object Relational Mapping)영속성 컨텍스트 (JPA가 내부에서 대체 어떻게 동작하는 걸까?)엔티티 매니저 팩토리와 엔티티 매니저 고객의 요청이 들어올 때마다 엔티티 매니저 생성엔티티 매니저는 내부적으로 데이터베이스 커넥션을 이용해 DB를 사용하게 됨 영속성 컨텍스트엔티티를 영구 저장하는 환경EntityManager.persist(entity);사실 엔티티를 DB에 저장하는 것이 아닌 영속성 컨텍스트라는 곳에 저장 엔티티 매니저를 통해 접근할 수 있음 J2SE & J2EE J2SE 환경 : 엔티티 매니저와 영속성 컨텍스트가 1:1 J2EE 환경 : (나중에 이해 가능)엔티티 매니저와 영속성 컨텍스트가 N:1스프링..

1. https://h2database.com/html/main.html H2 Database EngineH2 Database Engine Welcome to H2, the Java SQL database. The main features of H2 are: Very fast, open source, JDBC API Embedded and server modes; in-memory databases Browser based Console application Small footprint: around 2.5 MB jar file size Supph2database.com 가볍고 / 웹용 쿼리툴 제공 / MySQL, Oracle 데이터베이스 시뮬레이션 기능 / 시퀀스,AutoIncrement 기능 ..

과거에는 데이터베이스에 객체를 저장하려면 복잡한 JDBC API와 SQL을 직접 작성했어야 함MyBatis가 들어온 후에는 SQL을 직접 작성해야 했음 JPA를 사용하면 SQL도 쓸 필요가 없음 SQL 중심적인 개발의 문제점 만약 테이블을 변경할 일이 생기면 sql문을 다 바꿔야할 수 있음 관계형 DB에는 상속관계는 없음 근데 방법은 있음 - JOIN해서 가져오는 법 => 슈퍼타입 서브타입 관계 DB에서 SQL을 작성하고 하면 할 것이 많음 근데 자바 컬렉션에 저장한다고 해보자 자바 컬렉션을 사용하는 이유더보기연관관계 객체 VS 테이블객체는 참조 사용테이블은 외래키 사용 객체는 테이블에 맞춰 모델링 함 Team에 대한 참조가 아닌 id를 가지고 있음 나중에 insert 문 쓸 때 편리하기 ..