java jsp静态_Java jsp网站首页静态化解决方案

news/2024/5/20 23:22:45/文章来源:https://blog.csdn.net/weixin_26824207/article/details/114427430

缓存静态化处理流程:

1473056121219019014.jpg

关键代码:

本代码以jsp为例,其实还可以用freemarker等模板语言,但本人认为页面静态化属于后期优化工作,目前jsp应用要比freemarker要广泛,所以jsp更具有意义。protected void doPost(HttpServletRequest request,

HttpServletResponse response) throws ServletException, IOException

{

//实际中这个路径会根据参数在一定规则的计算下得到,保证其唯一性

File f = new File("/htmls/test.html");

if (!f.exists())

{

//加工数据,实际中会调用service

request.setAttribute("name","测试");

String content = JspUtil.getHtml(request, response,"/index.jsp");

FileUtil.save(content, "/htmls", null, "test.html");

}

StringBuffer sb = new StringBuffer();

FileReader fr = new FileReader(f);

BufferedReader br = new BufferedReader(fr);

String str = null;

while ((str = br.readLine()) != null)

{

sb.append(str);

}

fr.close();

br.close();

response.setCharacterEncoding("utf-8");

PrintWriter out = response.getWriter();

out.print(sb.toString());

out.flush();

}

一个简易的工具类:public class JspUtil{

public static String getHtml(HttpServletRequest request,

HttpServletResponse response, String jsp) throws ServletException,IOException

{

FileCaptureResponseWrapper fileCaptureResponseWrapper = new FileCaptureResponseWrapper(response);

request.getRequestDispatcher(jsp).forward(request,fileCaptureResponseWrapper);

return fileCaptureResponseWrapper.toString();

}

public static class FileCaptureResponseWrapper extends HttpServletResponseWrapper

{

private CharArrayWriter writer;

public FileCaptureResponseWrapper(HttpServletResponse response)

{

super(response);

this.writer = new CharArrayWriter();

}

public PrintWriter getWriter()

{

return new PrintWriter(writer);

}

@Override

public String toString()

{

String result = writer.toString();

writer.flush();

writer.close();

return result;

}

}

}

得到html代码后,可以存储到磁盘上,同样也可以应用缓存框架等工具,具体可以看具体情况而定。至于更新,可以设置时间更新,比如一天一次。同样也可以手动更新,比如编辑有一个即时更新首页的需要,这种情况最好手动更新啦。具体做法就是把存储的html数据清空就可以了!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_722214.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python怎么爬取图片地址_Python爬虫爬取一个网站上的图片地址实例代码

本文实例主要是实现爬取一个网站上的图片地址,详细如下。读取一个网站的源码:import urllib.requestdef getHtml(url):htmlurllib.request.urlopen(url).read()return htmlprint(getHtml(http://image.baidu.com/search/flip?tnbaiduimage&ieutf-8&…

服务器怎么部署静态网站,纯静态网站部署服务器

纯静态网站部署服务器 内容精选换一换PHPWind(简称:PW)是一个基于PHP和MySQL的开源社区程序,是国内较受欢迎的论坛之一。轻架构,高效易开发,使用户可快速搭建并轻松管理。本文档指导用户使用华为云市场镜像“PHPWind 论坛社区系统…

使用 Nginx 提升网站访问速度

本文主要介绍如何在 Linux 系统上安装高性能的 HTTP 服务器 —— Nginx、并在不改变原有网站结构的条件下用 Nginx 来提升网站的访问速度。Nginx 简介Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 N…

建立标准CA部署安全的SSL网站

概述: 随着网络安全的概念日益深入人心,公钥架构(PKI)在网络得到越来越广泛的应用。PKI使用证书进行身份验证,数据加密和数据签名,是目前信息安全保障的一种重要方法。 证书是PKI的基础,是实现网络安全&…

IIS7中发布网站到公网技巧与排错

为了最大化发挥硬件的优势,把客户的服务器升级到了Windows Server 2008,面临把SharePoint 应用和ASP.NET网站迁移到IIS7中,从新发布到公网。这里就谈谈如何在IIS7发布ASP.NET网站到公网。为了顺利迁移,首先搭建了一个VMware虚拟机…

谏言工信部:网站备案系统miibeian.gov.cn实在难用!

最近,因为工作需要,上了几次国家工业和信息化部的ICP/IP地址/域名信息备案管理系统http://www.miibeian.gov.cn/,实在是被它弄得很烦,忍不住要提几句批评意见,如果“不幸”被工信部有关官员看见,那就算是本…

“拯救网站运维经理赵明”有奖方案征集启事

赵明面临着被解雇的境地 “赵明!网站怎么又被***了?!”“赵明!你到底怎么搞的?!怎么又断线了?!”“赵明!你知道我们又损失多少吗?!”面临被解雇的…

美国创业公司所用到的Java开源建站工具

为什么80%的码农都做不了架构师?>>> 美国程序员Jon Scott Stevens,公布了他的创业公司所使用的开发工具清单。 他的语言平台是Java,开发项目是一个网站(还未上线)。所用到的工具都是开源的,可以免费得到。 在目前的创…

浅谈大型网站动态应用系统架构,互联网营销

动态应用,是相对于网站静态内容而言,是指以c/c、php、Java、perl、.net等服务器端语言开发的网络应用软件,比如论坛、网络相册、交友、BLOG等常见应用。动态应用系统通常与数据库系统、缓存系统、分布式存储系统等密不可分。 大型动态应用系统…

seo专题之二:网站pr值

什么是Pr值?pr是英文PageRank的缩写,中文翻译过来中网页级别.网页排名.wiki的解释:是一种由搜索引擎根据网页之间相互的超链接计算的网页排名技术,以Google公司创办人拉里佩奇(Larry Page)之姓来命名。此技术通常和搜索引擎优化有关&#xf…

地址总线是单向还是双向_扬州双向闸机网站

扬州双向闸机网站 vuvypox扬州双向闸机网站 三辊闸门禁机芯原理:智能三辊闸门禁设备,机芯是闸机门禁设备的主要部件,机械式和电动式都可以,都有采用。一方面,产品具有品牌知名度时已经明确了市场定位和核心&#xff0c…

PHP 伪静态seo,利用Nginx伪静态进行SEO优化

摘要:好久之前就想做访问自动匹配匹配页面来进行SEO优化了,好多SEO优化都是教你思路,感...好久之前就想做访问自动匹配匹配页面来进行SEO优化了,好多SEO优化都是教你思路,感觉一点都不实用,今天我们就利用N…

有些网站打开一半空白_扎心!scihub所有镜像都已“无法打开”......

有粉丝在后台反应,之前介绍过的科研者之家的SCIHUB永久链接打开是空白。一种不祥的预兆来临,因为这个永久链接就是自动检索全网可用的scihub链接,并选择速度最快的一个,打开空白页,意味着全网目前没有可用的镜像.....赶…

网页模板快速建站工具_个人可以免费建站?自助网站建站方法科普

现在个人成立工作室、工作团队,或者做个人自媒体的越来越多,这就需要有一个能展示自己的平台。而建设个人网站,则是很好的选择。网站既可以展示个人信息,又能吸引粉丝,甚至还能让你做一个个人商城。如何建站呢&#xf…

九种WordPress SEO优化技巧

有一个观点认为,使用WordPress作为非常优秀的内容博客程序,即使不做SEO也能从搜索引擎获得巨大的流量来源。其实这种观点也不都对,曾然搜索引擎(特别是Google)对WordPress非常友好,但是使用WordPress&#…

(转)利用个人电脑搭建网站WEB服务器域名访问

本文转载:http://www.cnblogs.com/fangpage/archive/2011/11/22/prowebserver.html 今天看到有人问我用个人电脑能否可以做网站服务器使用,并让internet通过域名访问吗?答案是肯定可以的,不过我是2M的ADSL路由,访问的速…

买服务器做网站 镜像选什么,云服务器做网站镜像类型选啥

云服务器做网站镜像类型选啥 内容精选换一换创建一台或多台云服务器。V1.1版本创建云服务器的接口兼容了V1版本创建云服务器(按需)的功能,同时合入新功能,支持创建包年/包月的弹性云服务器。本接口为异步接口,当前创建云服务器请求下发成功后…

seo伪原创工具_一键生成伪原创文章有用吗(正确使用伪原创工具)

一定有不少的SEOer正在使用伪原创文件生成器这个工具吧,我可以正确的断定出来,一个懂SEO优化的SEOer绝对能够正确理解文章的作用,而那些似懂非懂的SEOer每天都在为原创文章的事情烦恼。往往一直以为每天坚持更新文章就可以获得排名的SEOer却没…

SEO仍然是最主要的流量获取方式

淘宝客和SEO,一个是网站主的流量变现方式,一个是网站主流量的来源方式,所以SEO淘宝客也是目前很多站长最直接的模式。虽然社交已经挑战了搜索引擎,但是社交还无法代替搜索引擎成为最主要的流量入口,可以这样说&#xf…

HTML5网站大观:非常精美的 HTML5 摄影网站案例

2011年是 HTML5 蓬勃发展的一年,随着 HTML5 技术的日渐成熟,移动互联网将成为 HTML5 发展最大的舞台,我们有理由相信,在不久的将来,HTML5 将引领互联网新革命。本期的 HTML5 网站大观继续与大家分享国外优秀的 HTML5 网…