728x90
반응형
외부에서 특정 값을 주입 받아야 하는 경우(예: 외부 API key 등) 외부 설정 파일 - application.properties OR application.yml 에 설정하여 주입한다. resource 하위에 위치한 이런 설정 파일은 스프링 부트가 자동으로 로딩한다. application.yml 과 application.properties를 동시에 사용하면, .properties가 .yml을 덮어씌울 수 있으므로 한 가지만 사용해야 한다. (.properties가 더 나중에 로드됨.)
application.properties | application.yml |
각 라인은 단 하나의 key-value ${ }를 사용해 다른 환경변수 값 참조 가능 app.description = ${app.name} List 구조를 나타낼 수 있다. 스프링 2.4 이상부터는 한 파일에 다중 Profile 설정이 가능하다. '#---'로 구분하며 spring.config.activate.on-profile로 profile을 구별할 수 있는 이름을 준다. (예: spring.config.activate.on-profile=prod) 여러 파일로 나누어 Profil을 관리하는 경우(예: application-local.properties, application-dev.properties...) jar 빌드 시에 명령어로 환경에 맞는 profile을 쓸 수 있다. 예) nohup java -jar -Dspring.profiles.active=prod ${JAR_LOCATION} 1> log-prod.md 2>&1 & |
YAML은 계층적으로 구성 데이터를 지정하기에 편리하다. (중복되는 접두사가 제거되고, 계층구조라서 보기에 좋음) 예) datasource: mysql: driver-class-name: com.mysql.jdbc.Driver scheme: jdbc:mysql user: user password: passoword List 구조를 나타낼 수 있다. (보기 좋게) 예) application: servers: - ip: '127.0.0.1' path: '/path1' - ip: '127.0.0.2' path: '/path2' 스프링 버전과 상관없이 하나의 파일에 여러 Profile을 설정할 수 있다. Profile은 '---'로 구별한다. |
(참고: https://newwisdom.tistory.com/89)
+)
nohup 명령어 ?
nohup은 no hang up의 약자이다. 데몬 형태로 실행되어서 세션 연결이 종료되어도 종료되지 않고 계속 실행되어야 하는 프로세스를 실행할 때 nohup 명령어를 사용한다. = 중단 없이 실행되어야 하는 프로그램 명령어 앞에 nohup을 붙여준다.
++)
nohup 실행과 백그라운드 실행(명령어 맨 끝에 & 붙이기)의 차이 ?
백그라운드 실행은 그야말로 백그라운드에서 실행하는 것. 옵션으로 세션이 종료된 이후에도 실행되는것이지(디폴트임...) 원래는 세션에 종료되면 프로세스는 종료된다.
어떤 프로그램을 종료 없이 백그라운드에서 실행되게 하고 싶다면?
nohup ~~~~~~~ &
728x90
반응형
'Spring' 카테고리의 다른 글
웹 서버 - 외장서버 vs 내장서버 (0) | 2023.05.21 |
---|---|
XSS Filter 적용하기 (lucy-xss-servlet-filter) (0) | 2023.04.25 |
스프링 AOP (0) | 2023.03.05 |
스프링, 스프링 부트의 등장 (0) | 2023.03.05 |
스프링 부트의 핵심 기능 (0) | 2023.03.04 |