继承ServletContextListener可以完成的事情
1.定时任务:
定时任务是从某个固定的时间开始执行特定的程序,继承这个方法,可以实现刚启动项目的时候执行某特定的程序,完成给客户部署的时即可以看到某个页面的效果。
2.初始化系统常量等:
这样来完成系统需要的一些数据,批量完成页面需要的某些变量,
例如:Copyright © ${copyright_year}. ${applicationScope.cropyright_name}</div>
而且这些元素是可以批量初始化到applicationScope中去的。所以有些项目根据jsp页面中的applicationScope.cropyright_name,全文查找是找不到页面中的元素在哪里存了。
例如:
public void contextInitialized(ServletContextEvent servletContextEvent) {
ServletContext servletContext = servletContextEvent.getServletContext();
ApplicationContext applicationContext = WebApplicationContextUtils.getWebApplicationContext(servletContext);
SysInformationMapper sysInformationMapper = applicationContext.getBean(SysInformationMapper.class);
SysInformationExample sysInformationExample = new SysInformationExample();
sysInformationExample.createCriteria().andEnabledEqualTo("1");
List<SysInformation> sysInformationList = sysInformationMapper.selectByExample(sysInformationExample);
if(sysInformationList!=null && sysInformationList.size()>0){
for(SysInformation sysInformation:sysInformationList){
servletContext.setAttribute(sysInformation.getInfoSign(),sysInformation.getInfoValue());
System.out.println(sysInformation.getInfoSign()+" >>> "+sysInformation.getInfoValue());
}
}
}
3.需要在web.xml中配置对应的listener
<listener>
<listener-class>com.huntech.web.listener.SystemConfigListener</listener-class>
</listener>
继承ServletContextListener可以完成的事情的更多相关文章
- 读书笔记 effective c++ Item 39 明智而谨慎的使用private继承
1. private 继承介绍 Item 32表明C++把public继承当作”is-a”关系来对待.考虑一个继承体系,一个类Student public 继承自类Person,如果一个函数的成功调用 ...
- [js高手之路]从原型链开始图解继承到组合继承的产生
基于javascript原型链的层层递进查找规则,以及原型对象(prototype)的共享特性,实现继承是非常简单的事情 一.把父类的实例对象赋给子类的原型对象(prototype),可以实现继承 f ...
- 都0202年了,你还不知道javascript有几种继承方式?
前言 当面试官问你:你了解js哪些继承方式?es6的class继承是如何实现的?你心中有很清晰的答案吗?如果没有的话,可以通过阅读本文,帮助你更深刻地理解js的所有继承方式. js ...
- JavaWeb—监听器Listener
1.简介 Listener是Servlet的监听器,Servlet 监听器用于监听一些重要事件的发生,监听器对象在事情发生前.发生后可以做一些必要的处理. JavaWeb里面的listener是通过观 ...
- 互联网大厂Java面试题集—Spring boot常见面试题(二)
Spring Boot的核心功能与使用优点? 核心功能: 1)Spring Boot项目为独立运行的spring项目,java -jar xx.jar即可运行. 2)内嵌servlet容器(可以选择内 ...
- java注意的一些细节问题
1. 大括弧作用域问题 public static void main(String[] args) { { int x; { int x;//编译错误:Duplicate local variabl ...
- C3p0连接池配置
在Java开发中,使用JDBC操作数据库的四个步骤如下: ①加载数据库驱动程序(Class.forName("数据库驱动类");) ②连接数据库(Connection co ...
- Web.xml配置详解之context-param
<context-param> <param-name></param-name> <param-value>></param-value& ...
- spring web.xml 难点配置总结
web.xml web.xml是所有web项目的根源,没有它,任何web项目都启动不了,所以有必要了解相关的配置. ContextLoderListener,ContextLoaderServlet, ...
随机推荐
- 记录下一次错误报http请求500,
1.请求控制层没问题,能请求到,如果缺少参数都会返回提示信息,但是请求参数都对了以后,居然报500,非常不解 找了好久,不知道哪里错了,最后经理提示是不是有可能,mapper.xml出错了,最后,我将 ...
- 【python】ConfigParser写入和读取配置文件
参照博客 http://www.cnblogs.com/TankXiao/p/3038350.html 配置文件格式: [section1] name = tank age = 28 [section ...
- 人生苦短之我用Python篇(遍历、函数、类)
#遍历 info = {'key1':'value1','key2':'value2','key3':'value3'} #方式一 for i in info: print(i,info[i]) #方 ...
- PHPExcel导出导入
便于记忆 这里写一个PHPexcel导出的demo 我们构造一个数据 $letter = array('A','B','D','E'); //sheet索引 $date = array( ar ...
- [QT][问题]关于QT语言家使用失败的原因之一
按照标准的qt使用教程 ( http://www.qter.org/forum.php?mod=viewthread&tid=781 ) 实践了下,发现除去主界面外,点开的窗口多语言没有问题. ...
- SQLserver2008使用表达式递归查询
--由父项递归下级 with cte(id,parentid,text) as ( --父项 select id,parentid,text from treeview where parentid ...
- java的日期加减
在mysql里面
- maven编译问题:maven编译成功,eclipse文件未编译
我们先来看一个正常的编译流程: 1.从svn上检出一个项目: 2.看该工程是否为maven项目,不是则先转为maven项目:右键单击项目,选择configure->Convert to Mave ...
- datasnap 上传/下载大文件(本Demo以图传片文件为例)
好久没写技术文了 datasnap传大流. 完整代码,同时感谢叶兄传流的指点,(只公开十天) 附:下面代码,转载请注明出处 ::code 服务端: function TServerMethods1.D ...
- Java并发--CountDownLatch CyclicBarrier ReentrantLock
CountDownLatch CountDownLatch是一个同步工具类,它允许一个或多个线程一直等待,直到其他线程的操作执行完后再执行.CountDownLatch使用一个数字count初始化,使 ...