프로젝트를 진행하면서 .properties 파일을 .yml 파일로 변경했다.
기본적인 작성 방식은 다르지만 설정 내용들을 비슷해서 각 문법에 맞게끔 변환만 해주면 된다.
아래는 내가 .properties 파일을 .yml 파일로 변경한 일부 예시이다.
변경 이후 설정한 포트 번호로 스프링부트가 잘 작동함을 확인했다.
한글로 적힌 부분들은 각자의 환경에 맞게 넣어주시면 됩니다.
application.properties
spring.profiles.include=prod,jwt,oauth,redis,mail
application.yml
spring:
application:
name: 9T
profiles:
include: jwt,oauth,redis,mail
active: prod
application-prod.properties
spring.config.activate.on-profile=prod
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://RDS 엔드포인트:3306/데이터베이스 테이블 이름?serverTimezone=Asia/Seoul&characterEncoding=UTF-8
spring.datasource.username=RDS 사용자 이름
spring.datasource.password=RDS 비밀번호
spring.jpa.hibernate.ddl-auto=update
spring.jpa.generate-ddl=true
spring.jpa.show-sql=true
spring.jpa.properties.hibernate.format_sql=true
spring.jpa.properties.hibernate.enable_lazy_load_no_trans=true
server.port=9000
application-prod.yml
server:
port: 9000
spring:
application:
name: prod
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver # mysql 8버전
# driver-class-name: com.mysql.jdbc.Driver # mysql 5버전
url: jdbc:mysql://RDS 엔드포인트:3306/데이터베이스 이름?autoReconnect=true&serverTimezone=Asia/Seoul&characterEncoding=UTF-8
username: RDS 유저이름
password: RDS 비밀번호
jpa:
show-sql: true
generate-ddl: true
#database-platform: org.hibernate.dialect.MySQL5InnoDBDialect
hibernate:
ddl-auto: update
properties:
hibernate.enable_lazy_load_no_trans: true
hibernate.format_sql: true
application-dev.yml
server:
port: 8080
spring:
application:
name: dev
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver # mysql 8버전
# driver-class-name: com.mysql.jdbc.Driver # mysql 5버전
url: jdbc:mysql://RDS 엔드포인트:3306/데이터베이스 이름?autoReconnect=true&serverTimezone=Asia/Seoul&characterEncoding=UTF-8
username: RDS 유저이름
password: RDS 비밀번호
jpa:
show-sql: true
generate-ddl: true
#database-platform: org.hibernate.dialect.MySQL5InnoDBDialect
hibernate:
ddl-auto: update
properties:
hibernate.enable_lazy_load_no_trans: true
hibernate.format_sql: true
application-redis.properties
spring.redis.host=localhost
spring.redis.port=6379
spring.redis.password=비밀번호
spring.redis.lettuce.pool.max-active=10
spring.redis.lettuce.pool.max-idle=10
spring.redis.lettuce.pool.min-idle=2
application-redis.yml
spring:
redis:
host: localhost
port: 6379
password: 비밀번호
jedis:
pool:
max-active: 10
max-idle: 10
min-idle: 2
application-jwt.yml
spring:
jwt:
secretKey: 시크릿키
application-oauth.yml
spring:
security:
oauth2:
client:
registration:
google:
client-id:클라이언트아이디
client-secret: 클라이언트시크릿키
redirect: 리다이렉트 주소 예시는 https://localhost:9000/googleLogin
url:
login: https://accounts.google.com/o/oauth2/v2/auth
token: https://oauth2.googleapis.com/token
profile: https://www.googleapis.com/oauth2/v3/userinfo
참고 사이트
https://blog.naver.com/PostView.nhn?blogId=codingspecialist&logNo=221499365350
https://github.com/SangHyunGil/SpringSecurityJWT-Local-OAuth2-EmailAuth-Redis/blob/main/src/main/resources/application.yml
https://blog.startsomething.dev/2021/05/08/yaml%EC%97%90%EC%84%9C-%EB%94%B0%EC%98%B4%ED%91%9C%EB%A5%BC-%EC%8D%A8%EC%95%BC-%EB%90%A0%EA%B9%8C%EC%9A%94/
https://velog.io/@code12/spring-boot-OAuth%EB%A5%BC-%EC%9D%B4%EC%9A%A9%ED%95%B4-%EC%86%8C%EC%85%9C-%EB%A1%9C%EA%B7%B8%EC%9D%B8-%EA%B8%B0%EB%8A%A5-%EA%B5%AC%ED%98%84%ED%95%98%EA%B8%B0-myBatis%EA%B5%AC%EA%B8%80-%EB%A1%9C%EA%B7%B8%EC%9D%B8
https://velog.io/@seho100/Spring-boot%EB%A5%BC-%ED%99%9C%EC%9A%A9%ED%95%9C-JWT-%EA%B5%AC%ED%98%84