프로젝트를 jpa와 mysql을 사용해서 해보려고 합니다!
1. 아래 URL로 들어가 springboot프로젝트를 생성해줍니다!
- Gradle - Groovy
- Java
- 3.2.5
- Group: study(원하는대로)
- Artifact: jpa(원하는대로)
- jar
- jdk17
Dependencies
- springweb
- lombok
- mysql driver
- jpa
- thymeleaf
요정도 추가해줬습니다.
GENERATE를 클릭하면 다운로드가 되면 압축을 풀고 실행을 시켜줍니다!
2. build.gradle확인
제가 따로 추가한건 jasypt입니다.
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
implementation 'org.springframework.boot:spring-boot-starter-thymeleaf'
implementation 'org.springframework.boot:spring-boot-starter-web'
compileOnly 'org.projectlombok:lombok'
runtimeOnly 'com.mysql:mysql-connector-j'
annotationProcessor 'org.projectlombok:lombok'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
implementation 'com.github.ulisesbocchio:jasypt-spring-boot-starter:3.0.5'
}
바로 실행이 되지 않고 db연결을 해줘야합니다.
3. application.yml(application.properties)
저는 yml을 쓰기때문에 요런식으로 설정을 해주었습니다. jasypt를 사용해 암호화도 해놓았습니다😉
(jasypt암호화 하는 방법은! https://kimsegong.tistory.com/239)
spring:
jpa:
hibernate:
ddl-auto: create
properties:
hibernate:
dialect: org.hibernate.dialect.MySQL8Dialect
show_sql: true
format_sql: true
use_sql_comments: true
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: ENC(ICj95aRhKSeWpTUe3JBp+dHqUt7XU8z1S6fRgHeFsRhMyzALnoMHrxPTd1k3J8thn2EHcuGP/6MbFuHsGkJv3cbx/HjpXoHWoSGk8Ga87F8Z2kvHlJ9pCJd8J2wi9hxu)
username: ENC(wD4WtXb2cYZYnmCg/71BNQ==)
password: ENC(Q7qtOXRekeXjEcUhAIy8wA==)
logging:
level:
org:
hibernate:
type:
descriptor:
sql: trace
# jasypt
jasypt:
encryptor:
bean: jasyptStringEncryptor
실행을 해보면 요런식으로 실행이 됩니다!
4. 간단하게 Entity를 생성해줍니다.
package start.jpa.domain;
import jakarta.persistence.*;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@NoArgsConstructor
@AllArgsConstructor
@Data
@Entity
@Table(name = "member")
public class Member {
@Id
@Column(name = "MEMBER_ID")
private Long id;
private String name;
private int age;
}
생성 후 실행을 하게되면
생성된 테이블을 확인해보겠습니다
데이터는 없어서 Null이구요 테이블이 만들어진걸 확인할 수 있습니다!
'코딩기록 저장소 🐕 > 스스로 프로젝트와 연습' 카테고리의 다른 글
JPA P6spy 사용해보기🫡 (0) | 2024.05.10 |
---|---|
프로젝트(SpringBoot)에 JPA적용해보기2🥲 (0) | 2024.05.07 |
카카오 지도 API(2) (0) | 2024.05.02 |
카카오 지도 API 사용해보기 (0) | 2024.04.29 |
네이버클라우드 배포(1) (0) | 2024.04.28 |