2016-01-08 55 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