SpringBoot 는@Value 를 사용 하여 정적 변수 에 값 을 주입 합 니 다.

SpringBoot 에서@Value()를 사용 하면 일반 변수 에 만 값 을 주입 할 수 있 고 정적 변수 에 직접 값 을 부여 할 수 없습니다.
예컨대
application-dev.properties 설정 파일 은 다음 과 같 습 니 다.

일반 변수 에 값 을 부여 할 때 변수 성명 에@Value()주 해 를 직접 추가 하면 됩 니 다.다음 과 같 습 니 다.

정적 변수 에 값 을 주입 하려 면 정적 변수 성명 에@Value()주 해 를 직접 추가 하 는 것 이 잘못 되 었 습 니 다.예 를 들 어:

컴 파일 과 실행 상의 오류 가 없 지만 디 버 깅 을 통 해 알 수 있 듯 이 이러한 주해 방식 은 mailUsername,mailPassword,mailHost 의 값 이 모두 null 입 니 다.즉,정적 변수 에 게 프로필 을 직접 읽 어 주 는 것 이 잘못 되 었 습 니 다.다음 과 같 습 니 다.

정적 변수 에 값 을 부여 하려 면 set()방법 을 사용 할 수 있 습 니 다.클래스 에@Component 주 해 를 추가 해 야 합 니 다.방법 명(예 를 들 어 setMailUsername)과 매개 변수 명(예 를 들 어 username)은 임의로 이름 을 지 을 수 있 습 니 다.
다음 과 같다.

디 버 깅 결 과 는 다음 과 같다.

이상 은 개인 적 인 경험 이 므 로 여러분 에 게 참고 가 되 기 를 바 랍 니 다.여러분 들 도 저 희 를 많이 응원 해 주시 기 바 랍 니 다.

좋은 웹페이지 즐겨찾기