java web配置文件修改监听
来源:互联网 发布:jsp如何连接数据库 编辑:程序博客网 时间:2024/06/05 03:54
工程的总体结构如下:
1. pom文件
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.johnfnash.learn</groupId> <artifactId>config-listen</artifactId> <packaging>war</packaging> <version>0.0.1-SNAPSHOT</version> <name>config-listen Maven Webapp</name> <url>http://maven.apache.org</url> <properties> <springframework.version>4.1.4.RELEASE</springframework.version> </properties> <dependencies> <!-- spring相关包--> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>${springframework.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-beans</artifactId> <version>${springframework.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>${springframework.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <version>${springframework.version}</version> </dependency> <!-- servlet --><dependency><groupId>javax.servlet</groupId><artifactId>servlet-api</artifactId><version>2.5</version><scope>provided</scope></dependency><dependency><groupId>javax.servlet.jsp</groupId><artifactId>jsp-api</artifactId><version>2.0</version><scope>provided</scope></dependency> </dependencies> <build> <finalName>config-listen</finalName> </build></project>2. 监听器类
继承自 Spring的 ContextLoaderListener
package com.johnfnash.learn.config.listener;import java.io.File;import java.util.Timer;import java.util.TimerTask;import javax.servlet.ServletContextEvent;import org.springframework.web.context.ContextLoaderListener;/** *配置文件更改listener */public class ConfigModifyListener extends ContextLoaderListener {/** 配置文件的相对路径 */private final static String FILE_NAME = "/configue.properties";/** 文件更改时间 */private long modifyTime = 0;/** 文件 */private File file;@Overridepublic void contextInitialized(ServletContextEvent event) {super.contextInitialized(event); String rootPath = getClass().getResource("/").getFile().toString(); System.out.println("curr: " + rootPath);file = new File(rootPath + "/" + FILE_NAME);//启动定时任务new Timer().schedule(new CheckFileTask(), 10000, 20000);}/** * 检测文件更新任务 */class CheckFileTask extends TimerTask {public void run() {long time = file.lastModified();System.out.println("time: " + time);if(0 == modifyTime) {modifyTime = time;} else if(time != modifyTime) {//文件被改动,在此可以做出相应操作System.out.println("File has been changed!");modifyTime = time;}}}}其中配置文件放在 src/main/resources下
3. web.xml
这里需要将新建的ConfigModifyListener随web项目一起启动
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd" ><web-app> <display-name>Archetype Created Web Application</display-name> <!--加载spring配置文件 --> <context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:applicationContext-*.xml</param-value> </context-param> <!--设置一起动当前的Web应用,就加载Spring,让Spring管理Bean--> <listener> <listener-class>com.johnfnash.learn.config.listener.ConfigModifyListener </listener-class> </listener> </web-app>
0 0
- java web配置文件修改监听
- java web项目中读取和修改properties配置文件
- Java中Web程序修改配置文件不重启服务器的方法
- java 监听文件修改
- Oracle修改配置文件实现多个监听
- java web监听程序
- Java Web 中的监听
- C# 修改Web.Config配置文件
- java web 读取配置文件
- Java web Session 监听类。
- Java开发Web程序中修改类文件和配置文件不重启服务器的方法
- 基于Proguard软件基础上,针对Web项目xml配置文件修改的java项目。
- java远程修改服务器配置文件
- 在后台里修改配置文件(web.config)
- 修改weblogic配置文件快速部署web项目
- Java 读取配置文件Web方案
- Java Web读取properties配置文件
- java 配置文件 web.xml基础
- RTMP详解
- 1113. Integer Set Partition (25)
- Codeforces Round #205 (Div. 2) CodeForces 353BTwo Heaps
- POJ3468【线段树lazy操作】
- Spring-AOP:切面优先级和重用切点表达式
- java web配置文件修改监听
- 关于下载excel的技术问题
- pojLabeling Balls(拓朴 这个题 都说反向建图 好吧 好吧)
- Comparator与Comparable
- 阿里支付宝面试
- js 取两位小数 不要四舍五入或四舍五入的方法
- 在GameObject菜单下面第一级建立菜单项,并且在Hierarchy对话框中显示出来
- php读取超大文件最后几行
- 从零开始学_JavaScript_系列(27)——dojo的文档相关模块