Spring에서 속성 파일properties 읽기 및 사용 설명
3301 단어 Springproperties
실제 프로젝트에서는 일반적으로 설정 가능한 맞춤형 정보를 속성 파일(예를 들어 데이터베이스 연결 정보, 메일 발송 설정 정보 등)에 넣으면 통일된 설정 관리에 편리하다.예를 들어, 속성 파일/WEB-INF/configInfo에 구성할 속성 정보를 배치합니다.properties 중.
일부 구성 정보(메일 발송 관련):
#
email.host = smtp.163.com
email.port = xxx
email.username = xxx
email.password = xxx
email.sendFrom = [email protected]
Spring 용기를 시작할 때 속성 파일 정보를 내장 bean으로 불러옵니다. bean.xml에 다음을 추가합니다.Xml 코드
<!-- spring , properties -->
<bean id="propertyConfigurer"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="location">
<value>/WEB-INF/configInfo.properties</value>
</property>
<property name="fileEncoding" value="utf-8" />
</bean>
속성 정보를 불러온 후 그 중 하나는 다른 bean 정의에서 속성 정보의 key에 따라 value를 인용하는 것입니다. 예를 들어 메일 발송기 bean의 설정은 다음과 같습니다.Xml 코드
<!-- -->
<bean id="mailSender"
class="org.springframework.mail.javamail.JavaMailSenderImpl">
<property name="host">
<value>${email.host}</value>
</property>
<property name="port">
<value>${email.port}</value>
</property>
<property name="username">
<value>${email.username}</value>
</property>
<property name="password">
<value>${email.password}</value>
</property>
<property name="javaMailProperties">
<props>
<prop key="mail.smtp.auth">true</prop>
<prop key="sendFrom">${email.sendFrom}</prop>
</props>
</property>
</bean>
또 다른 사용 방법은 코드에서 설정된 속성 정보를 가져오는 것입니다. javabean:ConfigInfo를 정의할 수 있습니다.java, 주석을 이용하여 코드에 필요한 속성 정보를 주입하기;속성 파일에 다음과 같은 정보가 있으면 코드에서 사용할 수 있습니다.Java 코드
#
file.savePath = D:/test/
# ,
file.backupPath = D:/test bak/
ConfigInfo.java의 대응 코드:Java 코드
@Component("configInfo")
public class ConfigInfo {
@Value("${file.savePath}")
private String fileSavePath;
@Value("${file.backupPath}")
private String fileBakPath;
public String getFileSavePath() {
return fileSavePath;
}
public String getFileBakPath() {
return fileBakPath;
}
}
비즈니스 클래스 bo에서 메모를 사용하여 ConfigInfo 객체를 주입합니다.Java 코드
@Autowired
private ConfigInfo configInfo;
bean에 필요합니다.xml에 구성 요소 스캐너를 추가하여 주석 방식의 자동 주입에 사용합니다.Xml 코드
<context:component-scan base-package="com.my.model" />
(위 패키지 모델에는 ConfigInfo 클래스가 포함되어 있습니다.)get 방법을 통해 대응하는 속성 정보를 얻을 수 있는데 장점은 코드에서 사용하기 편리하다는 것이다. 단점은 코드에서 새로운 속성 정보를 사용해야 한다면 ConfigInfo를 사용해야 한다는 것이다.java는 상응하는 추가 수정을 합니다.
읽어주셔서 감사합니다. 여러분에게 도움이 되었으면 좋겠습니다. 본 사이트에 대한 지지에 감사드립니다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
[MeU] Hashtag 기능 개발➡️ 기존 Tag 테이블에 존재하지 않는 해시태그라면 Tag , tagPostMapping 테이블에 모두 추가 ➡️ 기존에 존재하는 해시태그라면, tagPostMapping 테이블에만 추가 이후에 개발할 태그 기반 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.