`

jsp动态生成静态页面

    博客分类:
  • jsp
阅读更多

研究了一下jsp动态生成静态页面 废话不多说了 直接上代码

/**
 * @author jeedroid
 * @time 2011-11-24 00:47:52
 */
package com.jeedroid.makehtml;
import java.io.*;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import java.net.URLEncoder;
public class MakeHtml
{
	
public static void makeHtml(String url)
{
		try {
			//读取要访问的文件的内容
			URL _url=new URL(url);
			URLConnection conn=_url.openConnection();
			InputStream inputStream=conn.getInputStream();
			BufferedReader buffer=new BufferedReader(new InputStreamReader(inputStream));
			StringBuilder stringBuilder=new StringBuilder();
			String line=null;
			while((line=buffer.readLine())!=null)
			{
				stringBuilder.append(line);
			}
			String fileContent=stringBuilder.toString();
			inputStream.close();
			String htmlFileName=generateFileName(url);
			File htmlFile=new File("DHtml/",htmlFileName);
			if(!htmlFile.exists())
			{
				htmlFile.createNewFile();
			//把fileContent写入到html文件中
				FileWriter fileWriter=new FileWriter(htmlFile,true);
				BufferedWriter bufferedWriter=new BufferedWriter(fileWriter);
				bufferedWriter.write(fileContent);
				bufferedWriter.close();
				fileWriter.close();
			}
		} catch (MalformedURLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
}

//generate html filename according to request url 
public static String generateFileName(String url)
{
	String preFileName=url.substring(url.lastIndexOf("/"));
	//需要把请求参数中的"?"转换一下  否则文件名不能出现问号
		String fileName=preFileName.replace("?", URLEncoder.encode("?"));
		return fileName.replace(".", "_")+".html";
}

}

 然后用junit做了下测试

package com.jeedroid.makehtml;

import static org.junit.Assert.*;

import org.junit.Test;

public class MakeHtmlTest
{

	@Test
	public void testMakeHtml()
	{
		MakeHtml.makeHtml("http://localhost:8080/DynamicToHtml/index.jsp");
	}

}
 还不错 直接生成了静态页面 访问的时候只要用urlrewriter把对index.jsp的请求导向servlet,然后调用上面的javabean,转向html页面就行了 只要url一样就直接显示那个html 哈哈
1
2
分享到:
评论

相关推荐

    JSP生成静态页面

    **JSP生成静态页面**是一种优化网站性能的技术,它通过将动态内容转化为静态HTML文件,减少服务器处理请求的负担,提高网页的加载速度。这种方式在高流量网站中尤其常见,因为静态页面可以被缓存,减少了数据库查询...

    JSP动态生成HTML静态页面源码

    1. **检测变化**:系统需要监听JSP文件或数据源的变化,一旦发现变化,就需要重新生成静态页面。 2. **预编译JSP**:当检测到变化后,使用JSP的`jsp:include`或`jsp:forward`指令,将JSP页面预编译成Servlet,并...

    jsp生成静态页面的方法

    ### jsp生成静态页面的方法 在Web开发领域中,动态页面技术如JSP(Java Server Pages)被广泛应用于构建复杂的网站应用。然而,在某些场景下,为了提高网站性能、减轻服务器压力或便于SEO优化,将动态生成的内容...

    JSP文件生成静态页面

    总结起来,"JSP文件生成静态页面"是一个旨在优化Web应用性能的技术,通过过滤器在请求处理阶段生成HTML并转发给客户端,降低了服务器处理动态请求的负担。这一技术需要对Java Web、Servlet过滤器以及HTML静态化有...

    jsp/java生成静态页面

    jsp生成静态页面 生成静态页面 完全可以运行的例子!!!!

    jsp 生成 HTML 静态页实例

    在Web开发领域,JavaServer Pages (JSP) 是一种广泛使用的服务器端脚本语言,用于创建动态、交互式的网页。JSP技术允许开发者将HTML代码与Java代码混合编写,然后在服务器端运行Java代码,生成HTML页面返回给客户端...

    jsp生成静态页面资料.rar

    JSP生成静态页面是提高网站性能的一种常见策略,因为它可以减少服务器处理的负担,加快用户加载速度。下面将详细解释JSP生成静态页面的概念、原理以及实现方法。 1. **静态页面与动态页面的区别** 静态页面是由纯...

    java/jsp生成静态页面html/htm

    java/jsp生成静态页面html/htm

    动态Jsp页面转换成静态Html页面

    5. 链接更新:如果动态页面包含其他动态链接,需要修改为静态页面的URL,确保页面间的导航正常。 三、实现步骤 1. 创建Servlet:编写一个Servlet,配置在web.xml中,设定URL映射规则,使得特定的JSP请求会被这个...

    查询数据库,由JSP生成静态页面

    在IT行业中,动态网站开发是常见的应用场景,而“查询数据库,由JSP生成静态页面”是一种优化网站性能的策略。这种技术旨在通过将频繁访问的数据转换为静态HTML页面,从而减轻服务器的压力,提高用户访问速度,提升...

    jsp生成静态页面,全面生成。

    这种方式称为"JSP生成静态页面",也就是标题和描述中提到的主题。 静态页面与动态页面的主要区别在于,静态页面的内容在服务器端被一次性生成,然后发送给客户端,而动态页面则是在每次请求时由服务器实时计算并...

    让jsp编程html生成静态页面,

    ### 让JSP编程HTML生成静态页面 #### 知识点概述 在现代Web开发中,将动态生成的内容转换为静态HTML页面有时是必要的。这不仅有助于提高网站性能(因为静态页面加载更快),还能增强SEO效果,使得搜索引擎更容易...

    jsp生成静态页

    本文将深入探讨JSP如何生成静态页面,以及这一过程对网站性能的影响。 一、JSP简介 JSP是一种基于Java的服务器端技术,由Sun Microsystems(现为Oracle公司的一部分)开发。它允许开发者在HTML页面中嵌入Java代码,...

    JSP生成静态HTML页面的几种方法

    JSP 生成静态 HTML 页面的几种方法 JSP 技术广泛应用于 web 开发领域,其中一个重要的应用场景是生成静态 HTML 页面。静态 HTML 页面相比动态页面具有许多优点,例如加载速度快、搜索引擎友好、减少服务器负载等。...

    jsp动态页面转化静态化--实例

    3. 实现静态化逻辑:在Servlet或Filter中,当接收到请求时,判断是否需要生成静态页面。如果需要,可以使用JSP的`javax.servlet.jsp.JspWriter`对象将JSP内容写入到HTML文件中,然后返回该HTML文件的路径。 4. 配置...

    通过URL生成静态页面

    总的来说,通过URL生成静态页面是提高网站性能的重要手段,它结合了动态网站的灵活性和静态网站的速度优势。在实际应用中,需要根据项目需求选择合适的实现策略,并注意平衡性能、更新、安全等因素。

    java生成静态页面的思路

    在Java编程领域,生成静态页面是一项常见的任务,尤其在构建网站、文档系统或者API文档时。这个过程通常涉及将动态内容转化为HTML格式的静态文件,以便于提高网站的加载速度和减少服务器负担。本篇文章将深入探讨...

    jsp生成静态页并分页

    总结,通过JSP生成静态页面并实现分页功能,可以提高Web应用的性能和用户体验。这个过程中涉及到了动态页面与静态页面的转换、数据库查询优化、用户交互设计等多个方面,是Web开发中的一个重要实践。

    JSP生成静态页面[归类].pdf

    《JSP生成静态页面》 在Web开发中,提高页面加载速度和搜索引擎友好性是重要的优化目标之一。静态页面由于不涉及服务器端处理,通常比动态页面更快,更易于搜索引擎抓取。JSP生成静态页面的技术就是为了实现这一...

    JSP结合JavaBean生成静态页面示例

    ### JSP结合JavaBean生成静态页面的技术要点及实现方法 #### 一、为什么要生成静态页面? 在Web开发中,动态页面(如JSP)虽然功能强大且易于维护,但每次请求都需要从数据库获取数据并执行复杂的逻辑处理,这无疑...

Global site tag (gtag.js) - Google Analytics