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

jsp静态化和伪静态化


首先说说为什么要静态化。
对于现在的Web Application来说,动态页面是占有绝对高的地位的,正因为有了动态化,才有了现在Web的丰富多彩,但是如同所有别的事实一样,好处往往都是有代价的。
为了产生出动态的效果,每一次对页面的请求都会要求服务器对页面进行编译或者执行,这些操作都很消耗系统资源。如果这期间还有和数据库的通讯,那么代价将会更大。
如果一个页面在一定的时间内,其内容没有发生改变,那么就不必为每一次对它的访问进行一次“新”的编译或执行。我们可以把它在这段没有发生改变的时间内的结果保存到一个静态的页面里面,然后每次访问这个页面时,就用刚才保存的静态页面进行回复。这样便能大大地减少系统资源的消耗,并且提高对客户的响应速度。而这个过程就称之为页面静态化。
现在所面临的问题就是如何在JSP中将页面的内容保存下来。
在访问JSP页面的时候,服务器会先将JSP文件编译为Servlet文件,然后对这个Servlet编译、执行,并最终把结果返回给客户端。而我们的任务就是要把这个最终生成的HTML静态页面保留下来,存放在服务器上。
解决的方法其实很简单。普通的对于JSP的访问,最终的数据流是回写到客户端的,如果我们把它重定向,让它回写到服务器上一个本地的文件,这样就能把JSP的执行结果保存起来,而这个文件就是我们想要得到的静态化的结果。
好了,说了那么多废话,现在说说具体怎么实现。
看过将JSP编译成的Servlet文件以后,可以知道这个Servlet是通过一个"JspWriter"类型的对象将数据回写给客户端的,而这个对象正是JSP里面的内置对象"out",现在我们只需要定义一个自己的类,让它继承"JspWriter"类,覆盖里面的输出相关函数,让数据都输出到一个指定的文件就可以了。
例如(省略了部分重载函数):
程序代码
import java.io.*;
import javax.servlet.jsp.*;
public class ConstPageWriter extends JspWriter {
     private PrintWriter pw;
     public ConstPageWriter(String fileName){
         super(JspWriter.DEFAULT_BUFFER, false);
         try{
             pw = new PrintWriter(fileName, "UTF-8");
         }catch(Excep


相关文档:

JSP中forward与sedRedirect的区别

二者区别是:
forward实际上是请求在服务器端跳转,请求方是感知不到这种跳转的,而sendRedirect是请求在客户端跳转(比如IE),等于再次从客户端发送了一个请求,forward情况下用户在地址栏里是看不到跳转后的地址的,sendRedirect则可以看到新的请求地址。 ......

浅谈如何实现JSP上传图片无组件化(转)

从JSP页使图片以JPEG编码后存储在指定文件夹中。这种JSP上传图片方式与组件上传相比似乎笨拙而又不能对文件属性进行操作,但的确可以轻松实现JSP上传图片的功能。
  uploadimage1.jsp实现构建一个表单,提交用于为
 <%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>
<%
Str ......

MyEclipse不识别jsp页面中的html标记?

如何知道不识别了呢?
MyEclipse--window--Preperences--MyEclipse--Files and Editors--XML--XML Catalog(若出现红色的叉号表示XML识别不了);
新建user_catalog.xml
(其中I:/Eclipse/CommonPlugins/DTD/ 目录下放置各种从网上下载的dtd文件)
如想添加新的dtd文件,修改此配置文件即可。
<?xml version="1.0" en ......

jsp servlet中的过滤器Filter配置总结

原文地址:http://hi.baidu.com/wangking/blog/item/8a109423ff3d2341ac34dec9.html
在Java web开发中常会使用到功能强大的过滤器,他毕竟能给我们带来很大的方便,但是针对过滤的资源我们需要详细的了解他们在web.xml中的配置信息。这个根据几种常用的不同情况进行了总结:
1。如果要映射过滤应用程序中所有资源:
< ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号