Springのcontext:property-placeholderプロパティ


1.问题:よく変更される配置属性を书くのはとてもLowのことで、それでは问题が来て、どんな简単で便利な方法があって、纯Javaで配置ファイルを読むのはすでに复雑に见えます.
2.答え:Spring 3は簡単な方法を提供していますcontext:property-placeholder
springのプロファイルに次の文を追加するだけです.
<context:property-placeholder location="file:/D:/*/*.properties" />
<context:property-placeholder location="file:/etc/*/*.properties" />

一気に、世界は美しくなって、前の文はWindowsの中の配置で、次の文はLinuxの配置です.
プロファイルの例:*.properties
mail.host=smtp.163.com
[email protected]
mail.password=123456
# SSL   
mail.port=25
#SSL   
#mail.port=465
mail.encoding=UTF-8
mail.smtp.auth=true
mail.smtp.timeout=25000
[email protected];

普通のKey-Valueマッピングです
3.適用:Beanの属性値を設定する
<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>

簡単で分かりやすい${}で構成パラメータを簡単に使用できます