새소식

인기 검색어

공부/ORM

231024 JPA

  • -

JPA(Java Persistent API): ORM 사용하기 위해 인터페이스를 모아둔 . 자바 ORM 기술에 대한 API 표준 명세를 의미함.

=>장점: 데이터를 객체지향적으로 관리 > 비즈니스 로직 -> 객체지향 개발

                                                        > 전체 프로그램 구조를 일관되게 유지

=>장점2: SQL 자동 생성하므로 유지보수가 쉽다. 테이블 변경 시에는 JPA Entity 수정하면 된다

=>장점3: DBMS 대한 코드 종속성이 줄어든다. DB 변경되어도 JPA DB 맞는 쿼리를 생성한다

 

Hibernate? JPA 인터페이스의 실제 구현부를 담당하며 HQL이라는 쿼리언어를 포함한다.

=>장점: SQL 직접 사용하지 않고 메소드 호출만으로 쿼리가 수행됨.

=>장점2: 비즈니스 로직에 집중 가능

 

JDBC(Java DataBase Connectivity)? DB 연결 작업을 하기 위한 자바 표준 인터페이스로 DB 접근해서 CRUD 쉽고 효율적이게 하고 고성능의 메서드를 제공해 보다 쉬운 프로그래밍을 있게 .

 

DAO/DTO/VO

DAO(Data Access Object): DB 데이터에 접근하기 위한 객체

ð Service DB 연결함.

ð Repository package

DTO(Data Transfer Object): 로직을 가지지 않은 순수한 데이터 객체

ð Getter/setter메서드만 가진 클래스

ð DB에서 데이터를 얻어 Service Controller으로 보낼 사용

ð Entity DTO형태로 변환하여 사용함

 

@Entity: 테이블 클래스 정의

@Table(name=”테이블명”): VO 클래스명과 다르게 테이블명을 생성하고 싶을

@Id: pk 지정

@Column(name=”컬럼명”, nullable=true/false)

@Transient : 테이블 컬럼에서 제외

@PrePersist: insert 실행전 실행되는 메서드 지정

 

조인

@ManyToOne

@OneToOne

@OneToMany

@ManyToMany

@JoinColumn(nullable=false)

@OnDelete(action=OnDeleteAction.CASCADE)

 

/product/getjson?num=1

Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.