java web启动时修改并重新加载properties文件
我现在有一个项目的基本配置properties文件,定义了一些系统常量.在启动时自动加载.代码如下:publicclassPropertyUtil{privatestat...
我现在有一个项目的基本配置properties文件,定义了一些系统常量.在启动时自动加载.代码如下:
public class PropertyUtil {
private static final Logger logger = Logger.getLogger(PropertyUtil.class);
private static Properties properties;
static {
// 加载属性文件
try {
InputStream inputStream = PropertyUtil.class.getClassLoader().getResourceAsStream("tteduwordgame.properties");
try {
properties = new Properties();
properties.load(inputStream);
} catch (Exception e) {
e.printStackTrace();
} finally {
inputStream.close();
}
} catch (Exception e) {
logger.error(e.getMessage());
}
}
public static String getProperty(String key) {
return properties.getProperty(key);
}
}
上述代码正确,但是我现在有一个新需求,就是这些常量是存在数据库的,有些时候数据库里面添加了一个新常量,我想在系统启动的时候,读取比对一下配置文件和数据库,把新增的配置增加到配置文件.完成对properties文件的修改和重新加载,最好在本类完成.求高手指导方案. 展开
public class PropertyUtil {
private static final Logger logger = Logger.getLogger(PropertyUtil.class);
private static Properties properties;
static {
// 加载属性文件
try {
InputStream inputStream = PropertyUtil.class.getClassLoader().getResourceAsStream("tteduwordgame.properties");
try {
properties = new Properties();
properties.load(inputStream);
} catch (Exception e) {
e.printStackTrace();
} finally {
inputStream.close();
}
} catch (Exception e) {
logger.error(e.getMessage());
}
}
public static String getProperty(String key) {
return properties.getProperty(key);
}
}
上述代码正确,但是我现在有一个新需求,就是这些常量是存在数据库的,有些时候数据库里面添加了一个新常量,我想在系统启动的时候,读取比对一下配置文件和数据库,把新增的配置增加到配置文件.完成对properties文件的修改和重新加载,最好在本类完成.求高手指导方案. 展开
3个回答
展开全部
Spring的话继承一下JdbcDaoSupport,然后通过this.getJdbcTemplate().query查询,再比较和写回配置文件!我们的初始化参数代码都是这么做的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你properties文件里面的信息在数据库都有嘛?
更多追问追答
追问
部分是数据库里面的
追答
那你往这个文件里面只新增(发现有了的话就不操作),不删除?
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询