Web/JPA(4)
-
[JPA] 엔티티 매핑
• 객체와 테이블 매핑: @Entity, @Table • 필드와 컬럼 매핑: @Column • 기본 키 매핑: @Id • 연관관계 매핑: @ManyToOne,@JoinColumn 객체와 테이블 매핑 @Entity • @Entity가 붙은 클래스는 JPA가 관리, 엔티티라 한다. • JPA를 사용해서 테이블과 매핑할 클래스는 @Entity 필수 • 주의 • 기본 생성자 필수(파라미터가 없는 public 또는 protected 생성자) • final 클래스, enum, interface, inner 클래스 사용X • 저장할 필드에 final 사용 X @Entity 속성 정리 • 속성: name • JPA에서 사용할 엔티티 이름을 지정한다. • 기본값: 클래스 이름을 그대로 사용(예: Member) • 같은 ..
2024.01.29 -
[JPA] 영속성 관리
JPA에서 가장 중요한 2가지 객체와 관계형 데이터베이스 매핑하기 영속성 컨텍스트 영속성 컨테스트 JPA를 이해하는데 가장 중요한 용어 "엔티티를 영구 저장하는 환경"이라는 뜻 EntityManager.persist(extity); 엔티티 매니저? 영속성 컨텍스트? 영속성 컨텍스트는 논리적인 개념 눈에 보이지 않는다. 엔티티 매니저를 통해서 영속성 컨텍스트에 접 J2SE 환경 엔티티 매니저와 영속성 컨텍스트가 1:1 대립 Entity -----> PersistenceContext 1:1 J2EE, 스프링 프레임워크 같은 컨테이너 환경 엔티티 매니저와 영속성 컨텍스트가 N:1 EntityManager -----> EntityManager -----> PersistenceContext EntityManage..
2024.01.22 -
[JPA] JPA 프로젝트 생성
H2 데이터 베이스 설치 http://www.h2database.com/ JPA를 사용하려면 DB가 있어야하기 때문에 간단하게 실습용 DB사용 OS 는 windows 사용 IDEA intellij 사용 File -> New -> Project 생성 Name : ex1-hello-jpa Language : java JDK : 11 Groupid : jpa-basic artifactid : ex1-hello-jpa 설정후 프로젝트 생성 해주시면됩니다. org.hibernate hibernate-core 5.3.10.Final com.h2database h2 1.4.200 maven dependency 설정 JPA 설정 하기 persistence.xlm 파일 만들기 /META-INF/persistence .x..
2024.01.17 -
[JPA] JPA 소개
Java Persistence API 자바 진영의 ORM 기술 표준 이다. ORM 이란 - Object-relational mapping(객체 관계 매핑) - 객체는 객체대로 설계 - 관게형 데이터베이스는 관계형 데이터베이스대로 설계 - ORM 프레임워크가 중간에서 매핑 - 대중적인 언어에는 대부분 ORM 기술이 존재 JPA는 애플리케이션과 JDBC 사이에서 동작 예를들어 member 객체를 저장해줘 라고 JPA에 던지게 되면 JPA는 객체를 분석하게된다 INSERT SQL을 알아서 만들어 쿼리까지 DB로 날려주게된다. 패러다임 불일치 해결 할 수 있다. 엔티티 오브젝트를 다 만들어서 던져주게 된다. 생산성 - JPA와 CRUD 저장 : jpa.persist(member) 조회 : Member membe..
2024.01.02