`
luotuoass
  • 浏览: 639775 次
文章分类
社区版块
存档分类
最新评论

从JSP,ASP等动态页面生成静态页面的实现方式

 
阅读更多

在网站应用中,为了提高页面的访问速度,经常需要将动态页面静态化以提高页面的访问速度,因为动态页面一般要从数据库检索信息,频繁访问动态页面会大大提高数据库的负载,并且访问速度也比静态页面慢.本文通过在程序里建立一个http请求,将返回的输出流存储为html文件的方式来生成静态页面.在CMS类的应用中,信息发布完可直接调用这段代码,给定一个动态连接地址如http://localhost:8080/cms/info.jsp?infoid=001,生成一个静态页面,代码如下:

package org.apache.easframework.common;

import java.io.BufferedReader;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLConnection;


/**
* 将信息发布为静态页面
* @author bzwang
*
*/

public class DynInfo2Html
{
/**
* 将信息转化为静态html
* @param sSourceUrl 动态信息访问URL
* @param sDestDir 存储为静态文件的目录
* @param sHtmlFile 生成的静态文件名,可以按信息的唯一ID+.html命名
* @throws IOException
*/
public static void convert2Html(String sSourceUrl,String sDestDir,String sHtmlFile) throws IOException
{
int HttpResult;
URL url=new URL(sSourceUrl);
URLConnection urlconn=url.openConnection();
urlconn.connect();
HttpURLConnection httpconn=(HttpURLConnection)urlconn;
HttpResult=httpconn.getResponseCode();
if(HttpResult!=HttpURLConnection.HTTP_OK)
{


}
else
{


InputStreamReader isr =
new InputStreamReader(httpconn.getInputStream());
BufferedReader in = new BufferedReader(isr);

String inputLine;
if(!sDestDir.endsWith("/"))sDestDir+="/";
FileOutputStream fout = new FileOutputStream(sDestDir+sHtmlFile);
while ((inputLine = in.readLine()) != null)
{
fout.write(inputLine.getBytes());


}
in.close();
fout.close();


}




}

public static void main(String[] args) throws IOException
{

convert2Html("http://localhost:9080/system/show.jsp?infoid=b3cd5cf4082a4bbebe70e332cb43fcb2","D:/projects/myproject/Src/b2c_front/Jsp/module/bzhzx/html","aaaa.html");

}

}

分享到:
评论

相关推荐

    JSP页面的动态包含和静态包含示例及介绍

    JSP中,有两种包含其它文件的方式,一种是静态包含,一种是动态包含。本文介绍其中的静态包含。 所谓静态包含,跟ASP中的包含是一样的效果,即将所有包含的文件,先静态的包含进来,组成一个大的JSP文件,然后再经过...

    用JSP生成静态页面

    JDK 1.5 +ECLIPSE +TOMCAT 5.0.28 + MYSQL 5.0 数据库TEST ,表名news 字段: id int 自动增长 , Title varchar(20) , Content varchar(200) , Author varchar(10) makeFile.jsp <...

    JSP技术生成动态web页面

    随着WEB技术的发展,WEB内容从一些静态的页到内容丰富的动态页。对于广大WEB开发人员来讲动态页面的生成是一个挑战。有许多的方法来试图解决这个问题,如plug-in技术及基于服务器端的APIs等方法,但存在的一个问题是...

    网站生成静态页面攻略3:防采集策略

     弊端: 1、此方法只适用于动态页面,如:asp\jsp\php等…静态页面无法判断某个IP一定时间访问本站页面的次数。 2、此方法会严重影响搜索引擎蜘蛛对其收录,因为搜索引擎蜘蛛收录时,浏览速度都会比较快而且是多...

    JSP生成静态页实践及其设计思想[转]

    智联虽然用的是asp,但他采用了另一种更巧妙的技术–asp生成静态页技术。所有的动态页基本上都转换成了html静态页,不用访问数据库,当然反应快了。下面我们讨论一下jsp怎么转换成html??首先要做一个模板。后缀不限,...

    计算机病毒与防护:PHP表单处理(GET).ppt

    单击此处添加标题 * * * * PHP表单处理(GET) 静态网页与动态网页 动态页面基本概念 动态页面是以ASP、ASPX、PHP、JSP等,由相应的脚本引擎来解释执行,根据指令生成静态网页。 动态页面上的内容存在于数据库中,...

    JSP动态网站开发基础教程与实验指导(从基础到应用)光盘

    JSP动态网站开发基础教程与实验指导(从基础到应用)光盘 作者:王晓军 田中雨 刘跃军 等 全书共分12章,介绍了,JSP开发环境配置,页面组成元素,内置对象,访问数据库技术,JavaBean,Servlet技术,以及开发JSP...

    信息自动采集生成系统

    1.可针对任何静态网页,动态网页进行采集。包括htm,html,shtml,ASP,ASPX,JSP,PHP等。 2.增加自定采集规则.用户可自定设置采集目标与规则.按规则保存到所需. 3.采集支持Utf-8和gbig5编码并能转换繁体为简体. 4.支持...

    信息办公Asp.net通用OA系统-uds.rar.tar.gz

    JSP将Java代码和特定变动内容嵌入到静态的页面中,实现以静态页面为模板,动态生成其中的部分内容。JSP引入了被称为“JSP动作”的XML标签,用来调用内建功能。另外,可以创建JSP标签库,然后像使用标准HTML或XML标签...

    jsp 书后习题答案

    jsp 书后习题答案 第一章 版本 慕课版 部分内容 1-1 JSP的全称是什么?JSP有什么优点?JSP与ASP、PHP的相同点是什么? JSP的全称是Java Server Pages。...共同点:可以在页面中加入脚本代码来生成动态内容。

    基于ASP实现的同学录系统.zip

    借助Dreamweaver MX,可以使用多种服务器语言,例如ASP、ASENET、ColdFusion 标记语言(CFML) JSP 和PHP 生成支持动态数据库的Web 应用程序。Dreamweaver MX 可谓是开发静态、动态网站的利器,也是开发Web 应用程序的...

    jsp 课后习题 第2章

    慕课版 1-1 JSP的全称是什么?JSP有什么优点?JSP与ASP、PHP的相同点是什么? JSP的全称是Java Server Pages。 优点:跨平台、分离静态内容和动态内容、可重复使用...共同点:可以在页面中加入脚本代码来生成动态内容。

    ASP.NET+程序习题答案+上机答案+模拟题+尚俊杰编著

    动态网页是用标准html代码和动态语言(如:asp,jsp,php,asp.net等)编写的。 关于静态动态网页的概念请参照P1.(P1=第1页,下同) 服务器端:在万维网中提供网页服务的一端称为服务器端。 客户端:接受服务的一端...

    ASP.NET 程序设计习题答案 尚俊杰 编著(完整版含代码)

    动态网页是用标准html代码和动态语言(如:asp,jsp,php,asp.net等)编写的。 关于静态动态网页的概念请参照P1.(P1=第1页,下同) 服务器端:在万维网中提供网页服务的一端称为服务器端。 客户端:接受服务的一端...

    全球商务网站系统[生成HTML版]

    脚本语言:ASP(*改为ASP解释JSP) 系统需求: 操作系统 Windows 2000 Adv Server,Windows 2000 Server 脚本解释器 Vbscripts5.6以上版本,安装Microsoft Internet Explorer5.5以上版本既可获得 Web服务器 ...

    基于J2EE框架的个人博客系统项目毕业设计论文(源码和论文)

    1、将业务层与表示层分离:使用JSP技术,网络开发人员可充分使用HTML来设计页面显示部分(如字体颜色等),并使用JSP指令或者JAVA程序片段来生成网页上的动态内容; 2、能够跨平台:JSP支持绝大部分平台,包括现在...

    音乐网站的设计与实现毕业设计ASP开题报告.doc.doc

    并 且,借助Dreamweaver,还可以使用服务器语言(例如ASP、ASP.NET、ColdFusion标记语 言(CFML)、JSP和PHP)生成支持动态数据库的Web应用程序。 使用Dreamweaver也可以制作出整个网站,只是Dreamweaver本身不适合...

    速度最快的,html网络购物系统

    演示网址:http://www.kushijie.com/index.html ... 时尚、简洁的设计风格,采用div+css结构,全生成静态网页,速度国内最快, 您可以到 http://www.linkwan.com/gb/broadmeter/speed/responsespeedtest.asp 测试

    ASP.NET内幕-IIS处理模型

    象CGI、PHP、JSP、ASP等动态服务器端资源生成技术出现以前,所有Web服务器必须接受客户端静态资源请求,将其发送给请求者。随着动态技术的发展,Web服务器开始承担更多的职责,因为它们必须采取一些方式在服务器端...

Global site tag (gtag.js) - Google Analytics