易截截图软件、单文件、免安装、纯绿色、仅160KB

JSP 容器的初始化和销毁 ServletContext(转)

ServletContext 被 Servlet 程序用来与 Web 容器通信。例如写日志,转发请求。每一个 Web
应用程序含有一个Context,被Web应用内的各个程序共享。因为Context可以用来保存资源并且共享,所以我所知道的
ServletContext 的最大应用是Web缓存----把不经常更改的内容读入内存,所以服务器响应请求的时候就不需要进行慢速的磁盘I/O了。
ServletContextListener 是 ServletContext 的监听者,如果 ServletContext
发生变化,如服务器启动时 ServletContext 被创建,服务器关闭时 ServletContext 将要被销毁。
在JSP
文件中,application 是 ServletContext 的实例,由JSP容器默认创建。Servlet 中调用
getServletContext()方法得到 ServletContext 的实例。
我们使用缓存的思路大概是:

务器启动时,ServletContextListener 的
contextInitialized()方法被调用,所以在里面创建好缓存。可以从文件中或者从数据库中读取取缓存内容生成类,用
ervletContext.setAttribute()方法将缓存类保存在 ServletContext 的实例中。

序使用 ServletContext.getAttribute()读取缓存。如果是 JSP,使用a
pplication.getAttribute()。如果是 Servlet,使用

getServletContext().getAttribute()。如果缓存发生变化(如访问计数),你可以同时更改缓存和文件/数据库。或者你等
变化积累到一定程序再保存,也可以在下一步保存。
服务器将要关闭
时,ServletContextListener 的
contextDestroyed()方法被调用,所以在里面保存缓存的更改。将更改后的缓存保存回文件或者数据库,更新原来的内容。
 1
 import
 User; 
//
my own class
 2
 import
 DatabaseManager; 
//
 my own class
 3
 import
 javax.servlet.ServletContext;
 4
 import
 javax.servlet.ServletContextListener;
 5
 
 6
 public
 
class
 MyContextListener
 7
 
 8
     
implements
 ServletContextListener {
 9
     
private
 ServletContext context 
=
 
null
;
10
 
11
     
public
 
void
 contextIniti


相关文档:

jsp中table导成excl文件

项目要求将后台数据进行显示(显示要求部分内容进行列项合并),在对显示的数据进行导出成excel
实现过程
1、查询和导出的jsp页面 关键代码
<script language=javascript>
function exportExcel(){
/****实现方法一
<%-- var curTbl = document.getElementById("techQueryTab"); --%>
<%-- ......

JSP 组件上传文件(common fileupload)

第1个上传组件commons-fileupload
=============commons-fileupload ================
common-fileupload组件是apache的一个开源项目之一,可以从http://jakarta.apache.org/commons/fileupload/下载。该组件简单易用,可实现一次上传一个或多个文件,并可限制文件大小。
-下载后解压zip包,将commons-fileupload-1.1. ......

在Tomcat6.0中关于JSP/Servlet表单乱码的一个解决方法

步骤一:编辑Tomcat的配置文件conf/server.xml在用于接受客户端语法的Connector<connector></connector>标签中添加URIEncoding="UTF-8"属性,该属性用来解决GET中的编码问题。
xml 代码
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8" / ......

jsp的pageEncoding和contentType

pageEncoding是jsp文件本身的编码
contentType的charset是指服务器发送给客户端时的内容编码
JSP要经过两次的“编码”,第一阶段会用pageEncoding,第二阶段会用utf-8至utf-8,第三阶段就是由Tomcat出来的网页, 用的是contentType。
第一阶段是jsp编译成.java,它会根据pageEncoding的设定读取jsp,结果是 ......

JSP内置对象及常用方法

1.request对象
客户端的请求信息被封装在request对象中,通过它才能了解到客户的需求,然后做出响应。它是HttpServletRequest类的实例。
序号 方 法 说 明
1 object getAttribute(String name) 返回指定属性的属性值
2 Enumeration getAttributeNames() 返回所有可用属性名的枚举
3 String getCharacterEncoding( ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号