관심쟁이 영호

[#4.1] Spring Boot ㅣ 스프링 부트 ㅣ JPA, DB설정 및 동작확인 본문

Bank-End/인프런- Spring 공부

[#4.1] Spring Boot ㅣ 스프링 부트 ㅣ JPA, DB설정 및 동작확인

관심쟁이 영호 2021. 3. 30. 01:30
반응형

오늘은 JPA, DB설정을 할 예정이다.

 

1. JPA란?

쉽게 말하자면, 자바의 객체와 DB를 연결해주는데 도움을 주는 ORM(대충 도우미?)이라고 한다.

 

2. application.yml을 생성한다.

- resources > application.yml을 생성한다.

- 기존에 있던 application.properties는 삭제해준다.

 

- 김영한 개발자님이 yml vs properties 구도에서는 본인이 생각하시기에 yml이 관리해야하는 파일이 많아질 수록 편하다고 하신다!

3. yml에 코드를 입력해준다.

# application.yml code

spring:
  datasource:
    url: jdbc:h2:tcp://localhost/~/jpashop;MVCC=TRUE
    username: sa
    password:
      driver-class-name: org.h2.Driver

      jpa:
        hibernate:
          ddl-auto: create # 애플리케이션 실행시점에 테이블 생성
        properties:
          hibernate:
            show_sql: true # 시스템 out으로 찍어보는 것
            format_sql: true

logging:
  level:
    org.hibernate.SQL: debug

위의 구문은 jpa를 설정해주는 것인데, 각각 주석처럼 의미가 있는 것이다.

 

4. 그리고 시험할 예제를 생성해본다.

- Member Class를 생성한다.

- Member 클래스를 생성하고 Annotation으로 Entity, Id, GeneratedValue를 지칭해준다.

- 각각의 어노테이션의 뜻은 이론편을 뛰어넘어서 잘을 모르겠지만, Member가 하나의 집합체(Entity)이고 안쪽에 식별자인 Id를 지칭해주는 듯한 느낌이다.

 

5. 그럼 여기서 만든 멤버를 관리해주는 친구를 만들어야한다.

- MemberRepository를 만들어주었다.

- EntityManager 객체의 em을 만들어 주었다.

여기서 EntityManager가 뭐지? 할텐데, 이것은 처음에 defendencies를 받아올 때, 이것에 대한 정보도 가지고 왔다. 한마디로, SpringBoot가 우리가 편하게 다 가지고 있고 우리는 가져다 쓰기만 하면되는것이다.

 

- 그리고 두가지의 메서드를 만들었는데 메서드 네임과 같이 save(저장), find(찾기)가 있다.

 

6. 잘 돌아가는지 테스트 코드를 생성하여 만들어보자.

해당 부분 부터는 다음 게시글 부터 시작한다.

 

 

 

 

해당 강의는 인프런의 "김영한" 개발자님의 강의 정리했습니다.

www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81%EB%B6%80%ED%8A%B8-JPA-%ED%99%9C%EC%9A%A9-1/dashboard

300x250
Comments