SPRING中读取properties文件

在spring中,读取properties文件十分容易

比如有properties文件:


SOLACE_VPN=D_JAVA_VPM
SOLACE_CONNECTION_FACTORY=D_JAVA_VPM_CF
SOLACE_OUTPUT_QUEUE_NAME=JAVAHONK_TEST

SOLACE_USERNAME_PUB=JAVAHONK
SOLACE_PASSWORD_PUB=PASS

然后可以使用注解类:



@Component
public class PropertyHolder {
	
	@Value("${SOLACE_HOST}") 
	private String SOLACE_HOST;
	
	@Value("${SOLACE_VPN}") 
	private String SOLACE_VPN;
	
	@Value("${SOLACE_CONNECTION_FACTORY}") 
	private String SOLACE_CONNECTION_FACTORY;
	
	@Value("${SOLACE_OUTPUT_QUEUE_NAME}") 
	private String SOLACE_OUTPUT_QUEUE_NAME;
	
	@Value("${SOLACE_USERNAME_PUB}") 
	private String SOLACE_USERNAME_PUB;
	
	@Value("${SOLACE_PASSWORD_PUB}") 
	private String SOLACE_PASSWORD_PUB;
	
	public String getSOLACE_HOST() {
		return SOLACE_HOST;
	}

	public void setSOLACE_HOST(String sOLACE_HOST) {
		SOLACE_HOST = sOLACE_HOST;
	}

	public String getSOLACE_VPN() {
		return SOLACE_VPN;
	}

	public void setSOLACE_VPN(String sOLACE_VPN) {
		SOLACE_VPN = sOLACE_VPN;
	}

	public String getSOLACE_CONNECTION_FACTORY() {
		return SOLACE_CONNECTION_FACTORY;
	}

	public void setSOLACE_CONNECTION_FACTORY(String sOLACE_CONNECTION_FACTORY) {
		SOLACE_CONNECTION_FACTORY = sOLACE_CONNECTION_FACTORY;
	}

	public String getSOLACE_OUTPUT_QUEUE_NAME() {
		return SOLACE_OUTPUT_QUEUE_NAME;
	}

	public void setSOLACE_OUTPUT_QUEUE_NAME(String sOLACE_OUTPUT_QUEUE_NAME) {
		SOLACE_OUTPUT_QUEUE_NAME = sOLACE_OUTPUT_QUEUE_NAME;
	}

	public String getSOLACE_USERNAME_PUB() {
		return SOLACE_USERNAME_PUB;
	}

	public void setSOLACE_USERNAME_PUB(String sOLACE_USERNAME_PUB) {
		SOLACE_USERNAME_PUB = sOLACE_USERNAME_PUB;
	}

	public String getSOLACE_PASSWORD_PUB() {
		return SOLACE_PASSWORD_PUB;
	}

	public void setSOLACE_PASSWORD_PUB(String sOLACE_PASSWORD_PUB) {
		SOLACE_PASSWORD_PUB = sOLACE_PASSWORD_PUB;
	}	

}



  spring配置文件:


	
	
	
	<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
		<property name="locations">
			<list>
				<value>classpath:javahonk-solace.properties</value>							
			</list>
		</property>
		<property name="ignoreUnresolvablePlaceholders" value="true"/>
	</bean>	
	
	<bean id="propertyHolder" class="com.migration.test.PropertyHolder"></bean>
		
</beans>




   使用propertyHolder属性,指定自定义类解析:
然后测试:
 


		
		ApplicationContext context = new ClassPathXmlApplicationContext("spring-context.xml");
		
		PropertyHolder propertyHolder = context.getBean(PropertyHolder.class);
		
		System.out.println(propertyHolder.getSOLACE_HOST());
		System.out.println(propertyHolder.getSOLACE_CONNECTION_FACTORY());
		System.out.println(propertyHolder.getSOLACE_OUTPUT_QUEUE_NAME());
		
		((AbstractApplicationContext) context).close();



猜你喜欢

转载自jackyrong.iteye.com/blog/2310156