spring利用注解方式实现Java读取properties属性值

时间:2024-11-06 11:36:14

1. 建立properties文件:我在resource下面建立一个config文件夹,config文件夹里面有mytest.properties文件,文件内容如下:

sam.username=sam

sam.password=123456

2.在spring.xml里面配置一些内容,让tomcat启动时加载下面内容:

<!-- Java读取properties文件的属性值  begin-->  
      <bean id="configProperties" class="org.springframework.beans.factory.config.PropertiesFactoryBean">
         <property name="locations">
            <list>
                <value>classpath:/config/mytest.properties</value>
            </list>
        </property>
       </bean>
      <bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PreferencesPlaceholderConfigurer">
             <property name="properties" ref="configProperties"/>
       </bean>
     <!-- Java读取properties文件的属性值  end-->

3. 在需要的bean里面进行注入:

@Component
public class Test {

@Value("#{configProperties['sam.username']}")
    private String username;
    @Value("#{configProperties['sam.password']}")
    private String password;
    
    public String getUsername() {
        return username;
    }
    public void setUsername(String username) {
        this.username = username;
    }
    public String getPassword() {
        return password;
    }
    public void setPassword(String password) {
        this.password = password;
    }
    
}

4. 在tomcat启动时,注解扫描时,扫到Test类的时,自动读取properties文件的属性值进行对Test对象实例化。