본문 바로가기
spring boot

Spring Data JPA

by 신방동불주먹 2023. 5. 3.

스프링부트 프로젝트에 Spring Data JPA 적용

 

  • intellij commutity 버전에는 DB Browser plugin 설치해야 함
  • 스프링부트 프로젝트에 build.gradle에 의존성 추가.
	implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
	runtimeOnly 'org.mariadb.jdbc:mariadb-java-client'
	compileOnly 'org.projectlombok:lombok'
	annotationProcessor 'org.projectlombok:lombok'

 

 

  • application.properties 추가
spring.datasource.driver-class-name=org.mariadb.jdbc.Driver
spring.datasource.url=jdbc:mariadb://localhost:3306/gallery
spring.datasource.username=root
spring.datasource.password=

 

 @Table

- 엔티티와 매핑할 테이블을 지정

- 생략 시 매핑한 엔티티 이름을 테이블 이름으로 사용

 

ex) items 테이블의 columns와 매핑

 

 

@Entity

- 해당 어노테이션을 붙이게 되면 해당 클레스가 데이터베이스의 테이블과 1대1 매칭이 됨.

 

@Column

- 해당 맴버변수와 테이블의 Column와 맵핑됨

 

@Id

- primary key 

 

 @GeneratedValue(strategy = GenerationType.IDENTITY)

- 기본 키 생성을 데이터베이스에 위임
즉, id 값을 null로 하면 DB가 알아서 AUTO_INCREMENT 해준다.

 

 

package com.example.backend.entity;

import lombok.Getter;

import javax.persistence.*;

@Getter
@Entity
@Table(name = "items")
public class Item {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private int id;

    @Column(length = 50, nullable = false)
    private String name;
}

 

 

'spring boot' 카테고리의 다른 글

yaml 파일  (0) 2023.02.28
빌드관리도구(Maven / Gradle)  (0) 2023.01.25
정적 컨텐츠 / 템플릿 엔진 / API  (0) 2023.01.25
프로젝트 빌드,실행  (0) 2023.01.25
View 환경설정(Thymeleaf)  (0) 2023.01.25