问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

java开发如何将动态页面转化为静态页面发布1

发布网友 发布时间:2023-10-19 21:33

我来回答

1个回答

热心网友 时间:2024-11-28 06:46

java生成静态页面无需特殊配置,非常简单的,下面有各种输出需求,看你要哪种就拿去用吧

import javax.servlet.http.HttpServletRequest;
import java.util.List;
import java.util.ArrayList;
import java.util.Date;
import java.net.URL;
import java.net.URLConnection;
import java.io.*;

public class JspToHtml {
private static String title ="标题测试";
private static String context ="标题测试";
private static String editer ="标题测试";

/**
* 根据本地模板生成静态页面
* @param JspFile jsp路经
* @param HtmlFile html路经
* @return
*/
public static boolean JspToHtmlFile(String filePath, String HtmlFile) {
String str = "";
long beginDate = (new Date()).getTime();
try {
String tempStr = "";
FileInputStream is = new FileInputStream(filePath);//读取模块文件
BufferedReader br = new BufferedReader(new InputStreamReader(is));
while ((tempStr = br.readLine()) != null)
str = str + tempStr ;
is.close();
} catch (IOException e) {
e.printStackTrace();
return false;
}
try {

str = str.replaceAll("###title###",
title);
str = str.replaceAll("###content###",
context);
str = str.replaceAll("###author###",
editer);//替换掉模块中相应的地方

File f = new File(HtmlFile);
BufferedWriter o = new BufferedWriter(new FileWriter(f));
o.write(str);
o.close();
System.out.println("共用时:" + ((new Date()).getTime() - beginDate) + "ms");
} catch (IOException e) {
e.printStackTrace();
return false;
}
return true;
}

/**
* 根据url生成静态页面
*
* @param u 动态文件路经 如: http://www.163.com/x.jsp
* @param path 文件存放路经如:x:\\abc\bbb.html
* @return
*/
public static boolean JspToHtmlByURL(String u, String path) {
//从utl中读取html存为str
String str = "";
try {
URL url = new URL(u);
URLConnection uc = url.openConnection();
InputStream is = uc.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(is));
while (br.ready()) {
str += br.readLine() + "\n";

}
is.close();
//写入文件
File f = new File(path);
BufferedWriter o = new BufferedWriter(new FileWriter(f));
o.write(str);
o.close();
str = "";
return true;
} catch (Exception e) {
e.printStackTrace();
return false;
}
}

/**
* 根据url生成静态页面
*
* @param url 动态文件路经 如: http://www.163.com/x.jsp
* @return d
*/
public static StringBuffer getHtmlTextByURL(String url) {
//从utl中读取html存为str
StringBuffer sb = new StringBuffer();
try {
URL u = new URL(url);
URLConnection uc = u.openConnection();
InputStream is = uc.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(is));
while (br.ready()) {
sb.append(br.readLine() + "\n");
}
is.close();
return sb;
} catch (Exception e) {
e.printStackTrace();
return sb;
}
}

/**
* 测试main 函数
*
* @param arg
*/
public static void main(String[] arg) {
long begin = System.currentTimeMillis();
//循环生成20个html文件
for (int k = 0; k < 20; k++) {
String url = "E:\\workspace\\oa\\golatel\\utils\\Temp\\mb.htm";//模板文件地址
String savepath = "d:/" + k + ".html";//生成文件地址
JspToHtmlFile(url, savepath);
}
System.out.println("用时:" + (System.currentTimeMillis() - begin) + "ms");
}

}

//模板文件名称 leon.html

<html>
<head>
<title>###title###</title>
<meta http- equiv="Content-Type" content="text/html; charset=gb2312">
<LINK href="../css.css" rel=stylesheet type=text/css>
</head>
<body>
<table width="500" border="0" align="center" cellpadding="0"
cellspacing="2">
<tr>
<td align="center">
###title###
</tr>
<tr>
<td align="center">
作者:###author###
</tr>
<tr>
<td align="center">
###content###
</td>
</tr>
</table>
</body>
</html>
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
苍雷剑和翻天印哪个好 还有玄冰剑和照妖镜 武林外传现在收购一套+15或者+16的法宝玄冰剑,苍雷剑大概是多少钱,求解... 武林外传苍雷剑玄冰剑可以用什么符强化 诗经桢字诗句 删除电脑里的共享文件夹在哪里设置电脑共享文件怎么删除 为什么我点击qq面板上的qq游戏会显示密码不正确 "CPR"真的是“检查口袋并跑步”的缩写吗? cpr屏蔽是什么意思? CPR是什么意思 CPD是什么意思 网络广告直销CPR (Cost Per Response ) 水泥着色剂2 苏州市富邦电器有限公司怎么样? jsp页面的三种方式 及静态引入和动态引入的区别 水泥地面硬化剂染色剂就是水泥染色剂吗?水泥地面染色剂哪种好?4 怎样把一个静态网站的html页面快捷方便的变成动态jsp页面...1 怎样把jsp动态页面转换成静态页面,包括jsp页面的动态链接... 微信怎么设置隐藏,不让好友看到?2 来电奇缘麻雀爱上凤凰被删掉的结局哪里可以看? 谁能告诉我那个电视剧来电奇缘最后那是什么意思啊?7 《来电奇缘》为什么大结局会剪掉最后的部分呢?在哪里能看到完整...1 请你围绕“快乐”这个话题,选择一件事情写一篇习作,7 怎样给狗狗做玉米粥,要煮多长时间?谢谢 sheen是什么牌子的手表16 SHEEN是什么品牌的手表?111 优酷下载的视频怎么转换为MP4格式呢?201 excle如何A列含有特定数据的对应B列内容输出到C列且无空... 没有带套没射会怀孕吗 苹果xsmax更新完系统下载软件不能人脸识别9 excel表格中,A列为查找区域,B列为查找条件,A列中,如...1 EXCEL b列包含a列尾数2位数值,怎么把B列查找出来填充...2 钢铁厂污水处理的危险源有哪些4 急~!手被油汤烫了下,火辣辣的疼,怎么弄才会好一些啊?1 污水处理厂的安全隐患有哪些36 一部手机怎么登录两个?8 污水处理厂施工危险点都有哪些4 如何使用文华财经看盘啊? 微信怎么隐藏不让好友看到588 生肖白虎属于什么时候8 风水中白虎拦路是什么意思?51 同一部手机怎样申请第二个? 这篮球鞋是什么型号的 八字 白虎煞怎样化解19 作文和蔼可亲的老师,在我心中您最美4 specialty 与major 的区别9 在EXCEL中,如何判断A列是否含有B列内容,并返回与B列对...4 大宋贤王的演员名单 excel如何查找A列包含B列的文本显示到C列?3 表格中A、B列数据有部分字符相同,如何查找标记出部分字符,或... 一个手机号能同时使用两个吗?749 一个手机能同时用两个吗