okliu123456
2015-09-24 11:34:00
原
java web开发maven工程只需修改配置文件不用重启工程即可动态加载配置文件
1、读取配置文件ConfigManager.java,把变量地址修改成自己的
//设置动态读取的文件路径 private static String configPath = "E:/Documents/NetBeansProjects/ConfigManager/conf"; //设置动态读取的文件名 private static String pathName = "/configuration.properties";
2、创建监听文件来读取配置文件FileListenerAdaptor.java
@Override public void onFileChange(File file) { System.out.println("[修改]:" + file.getAbsolutePath()); new ConfigManager(); }
3、启动输入maven令命启动 tomcat7:run
4、访问servlet地址 http://localhost:8080/Web/config
5、修改配置文件是再次访问 地址返回的是修改后的配置文件,无须重起web工程
//读取配置文件(属性文件)的工具类 public class ConfigManager { private static ConfigManager configManager; //properties.load(InputStream);读取属性文件 private static Properties properties; //设置动态读取的文件路径 private static String configPath = "E:/Documents/NetBeansProjects/ConfigManager/conf"; //设置动态读取的文件名 private static String pathName= "/configuration.properties"; static { try { // 构造观察类主要提供要观察的文件或目录,当然还有详细信息的filter FileAlterationObserver observer = new FileAlterationObserver( new File(configPath), null, null); // 构造收听类 FileListenerAdaptor listener = new FileListenerAdaptor(); // 为观察对象添加收听对象 observer.addListener(listener); // 配置Monitor,第一个参数单位是毫秒,是监听的间隔;第二个参数就是绑定我们之前的观察对象。 FileAlterationMonitor fileMonitor = new FileAlterationMonitor( 1000, new FileAlterationObserver[]{observer}); // 启动开始监听 fileMonitor.start(); } catch (Exception ex) { Logger.getLogger(FileListenerAdaptor.class .getName()).log(Level.SEVERE, null, ex); } } public ConfigManager() { // String configFile = "/opt/soft/apache-tomcat-8.0.12/webapps/gn/conf/configuration.properties"; String configFile = configPath+pathName; properties = new Properties(); InputStream in = null; try { System.out.println(new File(".").getAbsolutePath()); in = new FileInputStream(configFile); properties.load(in); in.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } finally { if (in != null) { try { in.close(); } catch (IOException e) { e.printStackTrace(); } } } } public static ConfigManager getInstance() { if (configManager == null) { configManager = new ConfigManager(); } return configManager; } public String getString(String key) { return properties.getProperty(key); } public int getInt(String key) { return Integer.parseInt(properties.getProperty(key)); }
有问题联系qq 363349862
猜你喜欢
- maven多模块构建SSM的web项目实例,前端使用angularjs
- 史上最全的maven pom.xml文件教程详解
- Maven创建java Web项目入门学习图文教程
- 基于spring mvc+maven的demo实例
- maven构建jbpm4.4 java工程的依赖包dependency列表
- bat批量删除maven仓库中的LastUpdated文件脚本
- maven搭建 spring mvc实例代码
- Spring4+Hibernate4+MySQL+Maven项目整合Java Web实例(Annotations+XML)
- spring mvc-showcase,便于学习springmvc,maven工程,建议使用谷歌浏览器
- Spring Mvc+Mybatis(maven工程)整合项目
- 基于Struts2.3.x+Spring3.2.x+Hibernate4.2.x+EasyUI1.3.4+Maven架构的示例程序
- maven整合ssm框架+EhCache搭建(eclipse可直接运行)
请下载代码后再发表评论
文件名:Web.zip,文件大小:18275.941K
下载
- /
- /Web
- /Web/nb-configuration.xml
- /Web/nbactions.xml
- /Web/pom.xml
- /Web/src
- /Web/src/main
- /Web/src/main/java
- /Web/src/main/java/com
- /Web/src/main/java/com/ambimmort
- /Web/src/main/java/com/ambimmort/Listener
- /Web/src/main/java/com/ambimmort/servlet
- /Web/src/main/java/com/ambimmort/util
- /Web/src/main/java/com/ambimmort
- /Web/src/main/java/com
- /Web/src/main/java
- /Web/src/main
- /Web

- 证 java实现最简单的web聊天室程序源代码,适合初学者
- 原证 java web慧心人力资源管理系统
- 原证 JSP实现用户登录、增删改查的简单实例,适合初学JSP,Servlet的人
- 原证精 Java开源社区论坛系统Symphony
- 原证精 java web学习入门的失物招领系统
- 证精 jsp+servlet开发java web诚欣企业电子商城(源码+数据库脚本)
- 证精 基于jsp+servlet的电子商城项目
- 原证 java servlet生成图片二维码(有/无Logo)生成和下载
- 证 通往架构师基础必备/详细剖析java web客户端和服务端交互时程序中HTTP协议的传输过程
- java servlet实现根据时间提醒用户休息
- 原证 struts2+jsp开发java web简易在线聊天室系统(不链接数据库)
- 原 java web个人所得税计算工具(Spring MVC+Hibernate++MySql+jQuery+BootStrap+css+js+jsp)

lbcanjelling LV3
2019年3月27日
云想衣裳花想容 LV1
2019年3月22日
滑小稽稽 LV7
2018年9月25日
imagine LV1
2018年9月19日
双城1234 LV1
2018年9月7日
zhoujian0319 LV1
2017年12月19日
回音哥 LV13
2017年12月11日
xiechang0122 LV5
2017年11月23日
wytongchun LV1
2017年11月2日
chinafjfzlj LV31
2017年10月11日

可行可乐369
2024年9月27日
暂无贡献等级
451804671
2023年3月23日
暂无贡献等级
tomcat_test LV2
2022年7月6日
aqin_qin LV1
2022年6月20日
Sarkin LV4
2022年4月30日
coderyx LV2
2021年10月26日
月亮0920
2021年3月15日
暂无贡献等级
a314178817 LV1
2021年2月9日
yuexin111 LV6
2021年1月22日
北方的驻风者 LV5
2020年12月7日