动网论坛,站长建站首选,国内使用量最多的论坛软件 动网论坛官方技术讨论区 站长工具 申请属于您自己的免费论坛
首页 | 新闻资讯 | 网站运营 | 网络编程 | 数据库 | 服务器 | 网页设计 | 图像媒体 | 网络应用 | 搜索优化 | 资源下载 | 动网主机 | DVBOX
    本站内  互联网 ASP论坛  ASP.Net论坛  PHP论坛
   程序开发 → 阅读文章

 JSP中捕获 OUT 输出的例子

作者来源: 
阅读 数 343 人次 , 2006-4-28 11:46:00 

  在CSDN里面看了一篇关于将动态JSP内容保存为静态页面的文章,忘记网址了,大家可以搜索一下 :)。他没有提供源代码,然后自己测试着写了一个.主要想法是捕获 out 的输出后,可以保存到一些静态文件中,可以写一个 JSP的缓冲程序.
  代码有待完善, 希望有这方面经验的朋友来共同完善.

  在RESIN环境中测试成功,没有在tomcat其他服务器下测试,还存在一个问题,就是不能够同时输出到IE浏览器中.

  以下为程序代码, 例如保存到 test.jsp 文件中,然后在IE中执行

  http://....../test.jsp

  将看不到任何输出,但是可以在后台resin的DOS窗口中看到输出的内容





  <%@ page language="java" contentType="text/html;charset=gb2312"%>
  <%@ page import="java.io.*"%>
  <%@ page import="java.util.*"%>
  <%!

  //继承 JspWriter 类
  class MyOut extends JspWriter
  {
  private HttpServletResponse response;

  //将输出语句都存入os中
  public CharArrayWriter os;

  public MyOut()
  {
  super(0, false);
  os = new CharArrayWriter();
  }

  public String getString() {
  return os.toString();
  }

  public final void write(byte buf[], int off, int len)
  throws IOException
  {
  os.write( new String(buf, off, len) );
  }

  public final void write(char buf[], int off, int len)
  throws IOException
  {
  os.write( new String(buf, off, len) );
  }

 





  
 
 收藏本文  打印本文  论坛讨论  关闭窗口
· 上一篇:Java学习:一个压缩文件的例子
· 下一篇:java新手必读:Java学习的捷径
· 构建高性能J2EE应用的10个技巧
· 扩展 Hibernate 对各类数据源支持
· Java多国语言问题解决方案
· 质量管理新七种工具简介(1)
· 用JavaMail显示复合邮件的内容


关于本站 | 联系我们 | 业务合作 | 客户案例 | 诚聘英才 | 广告合作 | 收藏本站
海口动网先锋网络科技有限公司版权所有
Copyright © 2000 - 2006 Cndw.Com
中华人民共和国电信与信息服务业务经营许可证编号 琼 ICP 020077