Chinaunix首页 | 论坛 | 博客
  • 博客访问: 761936
  • 博文数量: 140
  • 博客积分: 10288
  • 博客等级: 上将
  • 技术积分: 2895
  • 用 户 组: 普通用户
  • 注册时间: 2006-12-03 13:19
文章分类

全部博文(140)

文章存档

2009年(50)

2008年(90)

我的朋友

分类: Java

2008-09-28 08:44:30

为了减轻服务器压力,将原来的文章管理系统由JSP文件的从数据库中取数据显示改为由jsp生成静态html文件后直接访问html文件。下面是一个简单的示例

1.buildhtml.jsp

<%@ page contentType="text/html; charset=gb2312" import="java.util.*,java.io.*"%>
<%
try{
 String title="jsp生成静态html文件";
 String content="小样,还搞不定你?";
 String editer="hpsoft";
 String filePath = "";
 filePath = request.getRealPath("/")+"template.htm";
 out.print(filePath);
 String templateContent="";
 FileInputStream fileinputstream = new FileInputStream(filePath);//读取模块文件
 int lenght = fileinputstream.available();
 byte bytes[] = new byte[lenght];
 fileinputstream.read(bytes);
 fileinputstream.close();
 templateContent = new String(bytes);
 out.print(templateContent);
 templateContent=templateContent.replaceAll("###title###",title);
 templateContent=templateContent.replaceAll("###content###",content);
 templateContent=templateContent.replaceAll("###author###",editer);//替换掉模块中相应的地方
 out.print(templateContent);
 // 根据时间得文件名
 Calendar calendar = Calendar.getInstance();
 String fileame = String.valueOf(calendar.getTimeInMillis()) +".html";
 fileame = request.getRealPath("/")+fileame;//生成的html文件保存路径
 FileOutputStream fileoutputstream = new FileOutputStream(fileame);//建立文件输出流
 byte tag_bytes[] = templateContent.getBytes();
 fileoutputstream.write(tag_bytes);
 fileoutputstream.close();
}
catch(Exception e){
 out.print(e.toString());
}

%>

模板文件

2. template.htm



###title###




 
   
 
 
   
 
 
   
 
 

###title###
作者:###author###  
###content###
 


阅读(1144) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~