Springboot 에서 DATA-JPA(Hibernate) 사용하기[1] - 기초 설정

 

ORM 이란

ORM(Object Relational Mapping) 란 용어 그대로 객체와 관계형 데이터베이스의 데이터를 맵핑 해주는 것을 말한다. 필자가 사용해 본 ORM 은 Spring 에 Hibernate(JPA), Node.js 의 Sequelize, Bookshelf 이고 여기서는 Springboot에서 data-jap 를 사용해서 Springboot 와 데이터베이스간 데이터를 어떻게 처리하는지에 대해 설명하고자 한다.

Gradle 설정

먼저 말하지만 이후 게시글에 있을 Querydsl과 연동을 할 경우 버전 이슈가 있을 수 있다. 필자는 Springboot 1.52 버전을 사용하였다.

먼저 Gradle 설정을 살펴 보자

dependencies {
  	compile('org.springframework.boot:spring-boot-starter')
  	compile('org.springframework.boot:spring-boot-starter-web')
  	compile('org.springframework.boot:spring-boot-starter-aop')
  	compile('org.springframework.boot:spring-boot-starter-data-jpa') # 해당 라이브러리를 사용

위와 같이 compile('org.springframework.boot:spring-boot-starter-data-jpa') 을 추가한다

YAML 설정

spring:
  datasource:
    type: org.apache.tomcat.jdbc.pool.DataSource
    driver-class-name: com.mysql.jdbc.Driver
    url: jdbc:mysql://localhost:3306/mydb?autoReconnect=true&useSSL=false
    username:
    password:
  jpa:
      hibernate:
        ddl-auto: update  
        naming:
          strategy: org.hibernate.cfg.ImprovedNamingStrategy
      show-sql: true # 실행 되는 SQL문을 보여 줄지 설정
      properties:  
        hibernate.format_sql: true # 형식화된 sql 문을 보여준다. Beautifier 기능이라고 생각하면 된다
        hibernate.enable_lazy_load_no_trans: true #Lazy Load 를 적용하기 위한 설정
      database: mysql

이 외에 더 많은 설정이 가능하다. 궁금하면 아래의 링크를 클릭하자.

설정보기로 이동

경축! 아무것도 안하여 에스천사게임즈가 새로운 모습으로 재오픈 하였습니다.
어린이용이며, 설치가 필요없는 브라우저 게임입니다.
https://s1004games.com

여기까지 오면 일단 Springboot에 ORM 인 Hibernate 를 사용할 준비가 완료되었다. 다음 장에서는 Entity와 Repository 를 이용하여 실제로 Database 와 객체를 Mapping 하여 사용하는 법을 설명하고자 한다.

 

[출처] https://doohwan-yoo.github.io/data-jpa-1/

 

 

 

본 웹사이트는 광고를 포함하고 있습니다.
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.
번호 제목 글쓴이 날짜 조회 수
81 SpringBoot JPA 예제(@OneToMany, 단방향) 졸리운_곰 2018.12.31 193
80 JPA OneToOne? 자바 jpa join 졸리운_곰 2018.12.31 203
79 Spring Data JPA 연관관계 매핑하는 방법 졸리운_곰 2018.12.31 179
78 JPA 생성과 수정시 날짜시간 자동삽입 Hibernate generate timestamp on create and update 졸리운_곰 2018.12.13 2089
77 JPA로 insert / update시 날짜시간 자동으로 설정 How to create an auto-generated Date/timestamp field in a Play! / JPA? 졸리운_곰 2018.12.13 975
76 Spring Data repository with empty IN clause. 졸리운_곰 2018.11.16 237
75 Spring Data JPA Tutorial: Introduction to Query Methods 졸리운_곰 2018.11.16 266
74 JPA OrderColumn 에서의 정렬 order by 졸리운_곰 2018.11.16 720
73 Jpa @elementcollection 의 데이터 정렬 @orderby : JPA - Using @OrderBy Annotation file 졸리운_곰 2018.11.16 877
72 Springboot 에서 Querydsl 사용하기 졸리운_곰 2018.09.18 283
71 Springboot 에서 DATA-JPA(Hibernate) 사용하기[3] - JOIN file 졸리운_곰 2018.09.18 185
70 Springboot 에서 DATA-JPA(Hibernate) 사용하기[2] - Entity, Repository, CRUD file 졸리운_곰 2018.09.18 259
» Springboot 에서 DATA-JPA(Hibernate) 사용하기[1] - 기초 설정 졸리운_곰 2018.09.18 319
68 JPA_Mini_Book 이북 Java JPA file 졸리운_곰 2018.08.27 218
67 [Mybatis] parameterType="String" 사용시 문제점 졸리운_곰 2018.08.22 1510
66 MyBatis 에서 출력하는 에러 보기 : Catch exception in MyBatis 졸리운_곰 2018.08.22 354
65 MyBatis 기본 - insert,delete,update 졸리운_곰 2018.08.22 165
64 %Like% Query in spring JpaRepository 졸리운_곰 2018.08.20 189
63 Spring Data JPA Tutorial: Creating Database Queries From Method Names 졸리운_곰 2018.08.20 245
62 Spring Data JPA 에서 Java8 Date-Time(JSR-310) 사용하기 file 졸리운_곰 2018.05.28 257
대표 김성준 주소 : 경기 용인 분당수지 U타워 등록번호 : 142-07-27414
통신판매업 신고 : 제2012-용인수지-0185호 출판업 신고 : 수지구청 제 123호 개인정보보호최고책임자 : 김성준 sjkim70@stechstar.com
대표전화 : 010-4589-2193 [fax] 02-6280-1294 COPYRIGHT(C) stechstar.com ALL RIGHTS RESERVED