반응형
* 내가 해본 것 까먹지 않기 위한 기록
스샷 없음 주의
이래저래 바뀌는 값을 보통 properties파일에 관리할 것이다.
스프링에서 프로퍼티 파일을 읽은 후
@Value 어노테이션을 이용해 편하게 갖고와본다.
프로퍼티 파일의 위치는 빌드 패스 위치만 잘 설정되어 있다면 어디든 큰 상관은 아마 없을듯.
* Spring 5.3.5
openjdk 1.8
프로퍼티 파일은 이렇다고 하자.
application.properties
test.value=jeanette
그러면 적당히 설정하는 곳에다가 프로퍼티를 읽어오는 빈을 만든다.
나는 스프링 WebMvcConfigurer를 구현한 클래스 안에다 만들어주었다.
@EnableWebMvc
public class SpringMvcConfig implements WebMvcConfigurer{
//다른 세팅은 생략
//바로 프로퍼티 빈 설정
@Bean(name="thisIsName")
public PropertiesFactoryBean properties() {
PropertiesFactoryBean bean = new PropertiesFactoryBean();
bean.setLocation(new ClassPathResource("application.properties"));
return bean;
}
}
빈 이름 설정은 원래 안해도 되어야 하는 것 같은데
나는 왜인지 모르게(??) 이름이 없으니 잘 못 가져왔다.
나는 데드라인에 쫓기는 사람이므로 원인 파악은 나중에 하겠다...
아무튼 이름 설정해주고
이제 프로퍼티를 가져올 위치로 가보자
나는 컨트롤러에서 가져오려고 했다
@RestController
public class TestController{
@Value("#{thisIsName['test.value']}")
private String testValue;
...
}
@Value 어노테이션 부분을 보면 된다
빈에 이름을 지정해주지 않았을 때와는 사용법이 약간 다르니 잘 따라하기 바람
thisIsName 부분에 빈 네임을 지정하고
[''] 안에 프로퍼티 이름을 넣으면 됨
그럼 짜잔
testValue 안에 jeanette라는 값이 잘 들어갈 거임
반응형
'안그래보이지만 개발자 > 백엔드' 카테고리의 다른 글
[C] 소켓 통신과 파일 디스크립터 및 지원 함수 (0) | 2023.12.13 |
---|---|
정수 어레이리스트(ArrayList)를 정수 배열로 변환하기 + 정렬 (0) | 2020.10.27 |
[tomcat+spring] 이클립스 웹개발 초심자를 화나게 하는 MVC 패턴에서의 url 관련 환경설정 정리 (server.xml 수정) (3) | 2019.11.01 |
java 기초부터 복습하기 : 자바 기본 입력 (1) | 2019.06.12 |
java 기초부터 복습하기 : 자바 기본 출력 (2) | 2019.06.11 |