spring的context:property-placeholder属性

xiaoxiao2021-02-28  111

1. 问题: 把一些经常改动的配置属性写死是件很Low的事, 那么问题来了, 有什么简单方便的方式呢, 用纯Java去读取配置文件已经显得繁杂。

2. 答案: Spring3提供了很简单的方式context:property-placeholder

只需要在spring的配置文件里添加一句:

[html]  view plain  copy  print ? <context:property-placeholder location="file:/D:/*/*.properties" />   <context:property-placeholder location="file:/etc/*/*.properties" />   一下子, 世界就美好了, 上一句是Windows中的配置, 下一句是Linux的配置。

配置文件示例:*.properties

[html]  view plain  copy  print ? mail.host=smtp.163.com   mail.username=email@163.com   mail.password=123456   #非SSL端口号   mail.port=25   #SSL端口号   #mail.port=465   mail.encoding=UTF-8   mail.smtp.auth=true   mail.smtp.timeout=25000   mail.sendTo=email@163.com;  

就是普通的Key-Value映射

3. 应用:为Bean设置属性值

[html]  view plain  copy  print ? <bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">                  <property name="javaMailProperties">               <props>                   <prop key="mail.smtp.auth">${mail.smtp.auth}</prop>                   <prop key="mail.smtp.socketFactory.fallback">false</prop>                   <prop key="mail.smtp.timeout">${mail.smtp.timeout}</prop>                   <prop key="mail.sendTo">${mail.sendTo}</prop>               </props>           </property>   </bean>   如此简单明了 ${} 便可轻松使用配置参数
转载请注明原文地址: https://www.6miu.com/read-65780.html

最新回复(0)