기존에 jdbc+Mybatis를 통하여 개발 프로젝트를 만들다가 JPA를 공부하면서 까먹지 않기 위해
블로그에 기록해 놓았다.
우선 간략하게 JPA를 소개하면, JPA는 기존의 RDB 방식에서 벗어나 ORM을 통해 객체 지향적인
테이블 설계가 가능하고, 기존의 SQL Query가 아닌 method를 통해 직관적인 데이터 조작이 가능하다.
JPA의 가장 큰 특징은 아무래도 기존에 데이터를 전달하는 목적(DTO,VO)으로 사용했던 Mybatis와는
달리 객체 지향의 장점(캡슐화,추상화,상속 등의 다형성)을 살릴 수 있다는 것이다.
지금은 환경설정에 대한 글이므로, 자세한건 다음번에 이론을 정리할 때 써야겠다..
- 우선 프로젝트를 새로 만든다면, [New] -> [spring starter project] 클릭 -> 프로젝트명 적고 [Next]
- [Available]에서 Spring Web Starter,Spring Data JPA은 필수로 추가해주고
lombok,Thymeleaf,Mysql Driver등 자신의 프로젝트 환경에 필요한 것들을 추가하고 [finish]
- [application.properties] 파일에 jpa 관련 설정과 datasource 정보를 추가해주자
spring.jpa.hibernate.ddl-auto=update
spring.jpa.show-sql=true
spring.datasource.url=DB 호스트 주소
spring.datasource.driver-class-name= com.mysql.cj.jdbc.Driver
spring.datasource.username= username
spring.datasource.password= 1234
- creat : 기존 테이블 삭제 후 다시 생성
- creat-drop : creat과 같지만, 종료 시점에 테이블 제거
- update : 데이터 변경시에 반영
- validate : entity와 table이 매핑되어있는지만 확인
- none : 사용하지 않음
- 여기까지 JPA 관련 설정! xml Mybatis 설정보다 굉장히 간단하다...
'Spring Framework > JPA' 카테고리의 다른 글
JPA @DataJpaTest - 환경구성 (0) | 2023.12.12 |
---|---|
JPA findAll()은 어떻게 쿼리 결과를 객체로 파싱할까? (feat. 메서드 호출 과정) (0) | 2023.11.17 |
Hibernate 6.2 업데이트 시, Kotlin @OneToMany 제네릭 타입 이슈 (0) | 2023.10.24 |
[Spring Boot JPA] JPA란 무엇일까? (0) | 2020.05.12 |