JPA설정하기

임형종·2024년 1월 20일
0

스프링부트

목록 보기
8/28



JPA란(Java Persistent Api) :
1.JDBC API를 사용하여 SQL를 호출해서 DB와 통신한다.
2.객체 중심으로 애플리케이션 개발이 가능하다.
3.대표적인 오픈소스로는 Hibernate가 있다.
4.장점 : 편리하게 빨리 개발 할 수 있다.
5.단점 : 복잡한 쿼리문을 작성하기 힘듦(join, 서브쿼리)

즉 JPA 단일 보다는 MyBatis를 겸용해서 사용하기도 함

  • 1번

  • 2번 : jpa의 핵심기능들이 모여있다.

  • 3번

  • 4번

    둘 중 하나 복사를 하는데

  • mysql이 5.7이니 5 혹은 5.7로 설정함(5가 더 범용성이 있음)

  • 확장자는 붙이지않기(이름을 지정하는것이기 때문)

  • DTO에 반듯이 Entity가 붙어있어야 한다.

  • hibernate : 자바 언어를 위한 ORM 프레임워크
  • ORM
    1.Java 객체와 DB의 Table연결
    2.Java DTO 설계만 해도 DB에 테이블이 자동으로 생성

1.DDL-auto : 서버가 시작될때 ddl코드가 어떻게 실행될지 지정,Create,Drop

2.create : 테이블이 있으면 --> drop후 --> create

  • 단점 : 자동으로 만들어지고 사라지고 하니 데이터 손실의 문제가 발생
  • 시스템의 속도가 지연이 될 가능성이 높다.
  • 처음에는 아무 데이터가 없으니 ㄱㅊ

3.update : 테이블의 컬럼이 변경 될때만 수정사항이 반영

  • create로 어느정도 기반을 만든후 upadate로 바꿈

  • 실행할때만 true하고 안할때는 false로 꺼두기
  • 그러나 키면 sql문이 출력은 되는데 0,1,2,3,..이런식으로 사람이 이해 못하는 형식으로 출력

  • 이해 할 수 있게 출력함

  • Jpa는 repository랑 같이 엮어야만 사용이 가능함
  • JpaRepository<T, ID>
  • T : Table과 연결된 Entity
  • ID : Entity 내 PK(ID)의 자료형
  • JPA : NO SQL, SQL문을 쓰지말자!
  • JpaRepository안에서 기본 CRUD 메소드가 정의가 되어있음
  • hibernate 구현체가 테이블과, ID에 맞춰서 자동으로 구현

https://velog.io/@ap3878/repository

profile
제로부터시작하는개발생활

0개의 댓글

관련 채용 정보