![[Spring/기초] 환경 변수 파일 사용하기 (env.properties)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc0HluH%2FbtsHFNRYT07%2FltIkK7XbbHw4os6rGssjp0%2Fimg.jpg)
[Spring/기초] 환경 변수 파일 사용하기 (env.properties)Spring/Spring 기초2024. 5. 28. 22:04
Table of Contents
728x90
반응형

Spring Boot에서 환경변수 파일로 민감한 정보 따로 보관하기
환경변수를 Spring boot 프로젝트 전역에서 사용하려면 따로 설정을 해줘야 한다.
그럼 한번 방법을 알아보자
1. 변수 파일 생성
recources/properties 폴더 생성 후 env.properties파일 생성

2. env 파일에 환경변수 적기
DB_HOST=localhost
DB_PORT=5432
DB_NAME=exampleDB
DB_USERNAME=postgres
DB_PASSWORD=1234

요런식으로 자신이 원하는 변수들 적기

꼭 .gitignore에 적어서 변수가 git에 안올라가도록 하자
3. env 파일을 사용할 수 있도록 Spring boot에 연결
config폴더에 PropertyConfig.java 생성

package com.example.algoshuffer.config;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.PropertySource;
import org.springframework.context.annotation.PropertySources;
@Configuration
@PropertySources({
@PropertySource("classpath:properties/env.properties") // env.properties 파일 소스 등록
})
public class PropertyConfig {
}
아까 우리가 만들었던 env파일을 연결하고 @Configuration 어노테이션으로 Spring에 설정 클래스로 등록
4. env 파일안에 생성한 변수 사용

이런식으로 사용하면 된다.
그럼 왜 사용하냐?
1. 설정 분리 및 관리 용이성:
환경변수를 외부에 관리하기 떄문에 애플리케이션의 설정이 외부에 의해 제어됨 따라서 설정 변경이 필요할때 설정 파일만 만지면 되서 편해짐
2. 보안:
중요한 정보를 코드에 하드코딩하면 보안 문제를 예기할 수 있음. (잘못해서 git에 올린다거나) 그래서 따로 관리
3. 다중 환경 지원:
개발, 테스트, 스테이징 및 프로덕션같은 다양한 환경에서 애플리케이션을 실행할 때 환경 변수를 사용해서 각 환경에 맞는 설정을 쉽게 구성할 수 있음
728x90
반응형
'Spring > Spring 기초' 카테고리의 다른 글
[Spring/기초] 전역 예외 처리 + Test Code (1) (0) | 2024.07.14 |
---|---|
[Spring/기초] RestController 완벽 정리 (return type, 파라미터, 추가 개념 및 기능) (0) | 2024.06.23 |
[Spring/기초] Service (0) | 2024.02.07 |
[Spring/기초] Repository (0) | 2024.01.23 |
[Spring/기초] TDD (0) | 2024.01.21 |
@코딩하는 자연대생 :: 자연대생도 코딩을 하고 싶어
Coding, Software, Computer Science 내가 공부한 것들 잘 이해했는지, 설명할 수 있는지 적는 공간