2016-01-08 56 views
1

任何人都可以告诉我在java中使用spring框架如何正确处理* .propeties文件。 那里我没有任何问题要读取文件:使用弹簧设置属性文件中的值

@Component 
@PropertySource(value = {"classpath:/props.properties"}) 
public class UserParamsImpl{ 
    @Autowired 
    private Environment env; 

    public void readProp(){ 
    String path = env.getRequiredProperty("folder.path"); 
    } 

    public void setProp(String name, String val){ 
    //???????????????? 
    } 

} 

还有一个问题。我应该在哪里举行props.properties?现在它在src/main/resources中是否正确

回答

1

属性文件应该保存在src目录下。并从注释中删除“/”。例如,假设pro.propertiessrc/properties/props.properties.

database.driverClassName=jdbc.odbc.mysql 
database.user=sa 
[email protected] 

属性文件Java类应该是

@Component 
    @PropertySource(value = {"classpath:properties/props.properties"}) 
    public class UserParamsImpl{ 
     @Autowired 
     private Environment env; 
     @Value("${database.driverClassName}") 
     String dbName; 

     public void readProp(){ 
      System.out.println("dbName"); 
     } 

     public void setProp(String name, String val){ 
     //???????????????? 
     } 

    } 
+0

谢谢Mitesh。但是你的代码不能解决所有的问题。它让从文件加载值。以及如何在文件中设置新的属性值? – Vadim

+0

感谢Vadim。如果您想在属性文件中添加更多值,只需按键值方式添加新的订单项。您可以将此帖发表为 –

+0

Mitesh,您知道如何更改属性文件中的项目值吗?或者,也许更好的使用XML文件来存储用户设置? – Vadim