1.可以作为项目的动态页面生成静态页面的功能
2.可以当做JSP小偷
3.可以当做全文网摘
package richin.reflect;
import java.io.BufferedReader;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
public class PageStatic {
public static void convert2Html(String sFilePath,String sSavePath,String sHtmlFile) throws IOException
{
PageStatic ru = new PageStatic();
String baseHref="<base href='"+sFilePath+"'></base>";
String filePath = ru.getClass().getResource("/richin/reflect/PageStatic.class").getPath().toString(); //取得项目根目录
filePath = filePath.substring(1, filePath.indexOf("WEB-INF"));
int HttpResult;
String SavePath = filePath + sSavePath; //保存路径
URL url=new URL(sFilePath);
URLConnection urlconn=url.openConnection(); //抽象类 URLConnection 是所有类的超类,它代表应用程序和 URL 之间的通信链接,通过在 URL 上调用 openConnection 方法创建连接对象
urlconn.addRequestProperty("Accept-Language", "zh-cn");
urlconn.connect(); //使用 connect 方法建立到远程对象的实际连接
HttpURLConnection httpconn=(HttpURLConnection)urlconn; //每个 HttpURLConnection 实例都可用于生成单个请求,但是其他实例可以透明地共享连接到 HTTP 服务器的基础网络
HttpResult=httpconn.getResponseCode(); //getResponseCode可以从 HTTP 响应消息获取状态码
if(HttpResult!=HttpURLConnection.HTTP_OK) {
} else {
String charset=httpconn.getContentType();
//System.out.println(charset);
String charType=charset.substring(charset.lastIndexOf("=")+1);
//System.out.println(charType);
if("text/html".equals(charType))
charType="GBK";
InputStreamReader isr = new InputStreamReader(httpconn.getInputStream(),charType);
BufferedReader in = new BufferedReader(isr);
String inputLine;
if(!SavePath.endsWith("/")) {
SavePath+="/";
}
FileOutputStream fout = new FileOutputStream(SavePath+sHtmlFile);
while ((inputLine = in.readLine()) != null)
{
//System.out.println(inputLine);
if(inputLine.toLowerCase().equals("<head>"))
inputLine=inputLine+System.getProperty("line.separator")+baseHref;//加入basehref
inputLine=inputLine+System.getProperty("line.separator"); //换行
fout.write(inputLine.getBytes());
}
in.close();
fout.close();
}
}
/**
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
convert2Html("http://www.51cto.com/art/200807/79080.htm","/","a4.htm");
}
}
分享到:
相关推荐
在Java Web应用中,静态页面通常是指不依赖服务器动态生成内容的网页,如HTML、图片、CSS样式表和JavaScript脚本等。 在Java中,开发静态页面主要使用Tomcat或Jetty等Web服务器,这些服务器可以托管静态资源。当...
Java页面静态化是一种提高网站性能的技术,它将动态生成的网页转换为静态HTML文件,以减少服务器处理和数据库查询的时间,提升用户体验。这种技术在高访问量、数据更新不频繁的网站中尤其适用。 首先,我们需要理解...
Java CMS(内容管理系统)生成静态页面是一种常见的优化网站性能和提升用户体验的方法。在这个过程中,原本由动态脚本生成的网页内容被转化为HTML文件,这些HTML文件可以被浏览器直接读取,减少了服务器处理请求的...
- **定时刷新(Cron Job)**:设置定时任务,定期检查并更新静态页面,确保数据的时效性。 2. 客户端静态化: - **单页应用(SPA, Single Page Application)**:使用前端框架如React、Vue或Angular,将整个页面...
Java URLRewrite是一个非常实用的库,用于在服务器端实现URL重写,进而实现网站的伪静态化。这个技术在优化网站SEO(搜索引擎优化)和提高用户体验方面具有重要作用。在这个"java urlrewrite 实现伪静态化 demo源码...
在Java编程中,生成静态页面是一种常见的技术,它涉及到网页内容的抓取和存储。这个程序的主要目的是从指定的URL抓取网页内容,并将其保存为一个HTML文件,即静态页面。下面将详细讲解这个过程涉及的关键知识点。 1...
- **URLRewrite实现URL伪静态化**:通过URLRewrite工具,可以改变URL的展示形式,使其看起来像静态页面,但实际仍由动态页面处理。这种方法并不真正生成静态文件,但在用户看来,URL更简洁,更像静态页面。 4. **...
在这个特定的场景中,"java解决网站静态页面生成方案(源码)" 提供了一个利用Java实现的解决方案,旨在提高网站性能和用户体验。静态页面通常加载更快,对搜索引擎友好,且在高并发访问时能更好地处理负载。 生成...
Java爬虫WebMagic是开发者常用来抓取网页数据的一个强大工具,尤其对于处理静态页面,它的易用性和灵活性使得在Java开发环境中非常受欢迎。WebMagic的设计理念是模块化,这使得我们可以灵活地组合各个组件来实现不同...
伪静态页面生成技术是网站优化的重要手段,它结合了动态网页的灵活性和静态网页的优势,有助于提升SEO排名和用户体验。通过URL重写、服务器端转换或前端路由等方式,我们可以轻松实现伪静态效果。在实际应用中,合理...
Java 自动生成静态页面技术是一种将动态网站内容转化为静态HTML页面的方法,这有助于提高网站的访问速度和搜索引擎优化。在本示例中,"java自动生成静态页面Demo源码" 提供了一个完整的实现,包括源代码和可能使用的...
【标题】"网上商城-静态页面模版"指的是一个用于构建在线购物平台的网页设计模板。这个模版专为初级开发者设计,旨在帮助他们快速搭建一个功能基础的网上商城网站,无需从零开始编写所有HTML、CSS和JavaScript代码。...
Java静态网页技术主要涉及到将动态网页内容转换成静态HTML页面,以便提高网站的访问速度和搜索引擎优化(SEO)。动态网页通常由服务器上的程序在请求时生成,而静态HTML页面是预先生成并存储在服务器上,用户请求时...
在“Hui.admin最新完整版下载”这个压缩包中,我们可以推测这可能是一个完整的后台管理系统项目,包含了前端静态HTML页面以及后端Java代码。通常这样的项目会包含以下组件: 1. **前端框架**:可能会使用Bootstrap...
在本文中,我们将深入探讨如何使用`urlrewrite`框架来实现静态页面的转换,这是一个在J2EE环境中常用于URL重写和管理的工具。`urlrewrite`框架可以帮助开发者优化URL结构,使其更加用户友好,同时也便于搜索引擎优化...
将动态页面转换为静态页面可以显著减少数据库的负载,提高网站的响应速度。 动态页面转换为静态页面的主要思路是利用Filter(过滤器)和Servlet来实现。Filter在Java Web中扮演着拦截请求的角色,可以对请求进行...
Java/JSP网站实现伪静态是一种优化网站性能和搜索引擎优化(SEO)的方法,它将动态页面的URL转换为静态或看似静态的格式,如.html。这样做可以提高网站的加载速度,减少服务器负担,并使搜索引擎更容易抓取和理解...
Java伪静态技术是一种在Web开发中用于优化搜索引擎友好度(SEO)的技术,它使得动态URL看起来像静态的HTML页面,从而提升网站的可读性和用户体验。在这个实例中,我们将探讨如何使用`urlrewrite`框架来实现Java中的...
5. 链接更新:如果动态页面包含其他动态链接,需要修改为静态页面的URL,确保页面间的导航正常。 三、实现步骤 1. 创建Servlet:编写一个Servlet,配置在web.xml中,设定URL映射规则,使得特定的JSP请求会被这个...
然而,在某些场景下,为了提高网站性能、减轻服务器压力或便于SEO优化,将动态生成的内容转换为静态页面变得尤为重要。本文将详细介绍如何利用JSP与Servlet技术实现动态页面到静态页面的转换。 #### 技术背景 - **...