프로젝트를 진행하면서 .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

+ Recent posts