1、 需要静态化的页面需要是内容不会经常变动的页面
2、 开始静态化
(1)首先确定好要静态化的jsp
(2)打开url 获取jsp
(3)通过流的方式读取jsp 输出 html
/**
* @param sourceUrl 源路径
* @param saveDir html 存储路径
* @param htmlName 生成的html 文件名
* @throws IOException
*/
public static void convert2Html(String sourceUrl, String saveDir,
String htmlName) throws IOException
{
//定义一个返回值 (在url open connection时 查看返回值 是否可以打开连接
int HttpResult;
URL url = new URL(sourceUrl);
URLConnection urlconn = url.openConnection();
urlconn.connect();
HttpURLConnection httpconn = (HttpURLConnection) urlconn;
HttpResult = httpconn.getResponseCode();
// url 打开连接应当返回一个 jsp (包含后台数据的jsp)
if (HttpResult != HttpURLConnection.HTTP_OK)
{
//如果打开连接失败则直接返回 或者抛出错误
}
else
{
//成功获得jsp 然后通过流的方式 把jsp 输出到 html
InputStreamReader isr = new InputStreamReader(httpconn
.getInputStream(), "GB2312");
BufferedReader in = new BufferedReader(isr);
String inputLine;
if (!saveDir.endsWith("/"))
saveDir += "/";
FileOutputStream fout = new FileOutputStream(saveDir + htmlName);
while ((inputLine = in.readLine()) != null)
{
fout.write(inputLine.getBytes());
}
in.close();
fout.close();
}
}
2、 开始静态化
(1)首先确定好要静态化的jsp
(2)打开url 获取jsp
(3)通过流的方式读取jsp 输出 html
/**
* @param sourceUrl 源路径
* @param saveDir html 存储路径
* @param htmlName 生成的html 文件名
* @throws IOException
*/
public static void convert2Html(String sourceUrl, String saveDir,
String htmlName) throws IOException
{
//定义一个返回值 (在url open connection时 查看返回值 是否可以打开连接
int HttpResult;
URL url = new URL(sourceUrl);
URLConnection urlconn = url.openConnection();
urlconn.connect();
HttpURLConnection httpconn = (HttpURLConnection) urlconn;
HttpResult = httpconn.getResponseCode();
// url 打开连接应当返回一个 jsp (包含后台数据的jsp)
if (HttpResult != HttpURLConnection.HTTP_OK)
{
//如果打开连接失败则直接返回 或者抛出错误
}
else
{
//成功获得jsp 然后通过流的方式 把jsp 输出到 html
InputStreamReader isr = new InputStreamReader(httpconn
.getInputStream(), "GB2312");
BufferedReader in = new BufferedReader(isr);
String inputLine;
if (!saveDir.endsWith("/"))
saveDir += "/";
FileOutputStream fout = new FileOutputStream(saveDir + htmlName);
while ((inputLine = in.readLine()) != null)
{
fout.write(inputLine.getBytes());
}
in.close();
fout.close();
}
}