从Java中的Properties文件中检索数据

时间:2016-04-13 06:05:26

标签: java

我的代码中有一个静态数组列表。现在我希望将它移动到属性文件中,这样如果将来有任何更改或修改,我只需更改属性文件中的值,它将反映在使用它的任何地方。

截至目前,静态代码是这样的:

ArrayList dataList = new ArrayList();
dataList.add("A");
dataList.add("B");
dataList.add("E");
dataList.add("G");
dataList.add("H");
dataList.add("P");
dataList.add("W");



ArrayList TypeList = new ArrayList();
TypeList.add(new Brand("A", "Test1"));
TypeList.add(new Brand("B", "Test2"));
TypeList.add(new Brand("E", "Test3"));
TypeList.add(new Brand("G", "Test4"));

我试过这个,但这不起作用:

Properties prop = new Properties();
prop.load(new FileInputStream("/displayCategerization.properties"));

我希望它们都是动态的,并且应该从属性文件中选择值。我怎么能这样做?

2 个答案:

答案 0 :(得分:0)

您可以尝试以下代码:

    MyProfile pf = null;
    try {
        session.beginTransaction();
        Query query = session.createQuery("from MyProfile as term where term.profileId=:pId ");
        query.setString("pId", pid);
        pf = (MyProfile)query.uniqueResult();
        if(pf != null)
        {
            Hibernate.initialize(pf);
        }
    } catch (HibernateException he) {
        throw he;
    } 

在程序启动期间调用此函数。如果属性文件更新

,则需要重新启动程序

答案 1 :(得分:0)

您可以这样使用: -

    Properties prop = new Properties();
    prop.load(new FileInputStream("Test.properties"));
    String name = prop.getProperty("name");
    String city = prop.getProperty("city");

Test.properties

名= XYZ

城市= AAA