jsp生成静态页面遇到的一些问题

看见别人网站上都是静态页面,心里痒痒的,昨天晚上自己试着写了一下
不过只能写出非常简单的一部分,在静态页面里分页还不会做,还有待研究

NewsForm.java

  1 /*
  2 * Generated by MyEclipse Struts
  3 * Template path: templates/java/JavaClass.vtl
  4 */

  5 package  com.news.form;
  6
  7 import  javax.servlet.http.HttpServletRequest;
  8 import  org.apache.struts.action.ActionErrors;
  9 import  org.apache.struts.action.ActionForm;
 10 import  org.apache.struts.action.ActionMapping;
 11
 12 /** 
 13 * MyEclipse Struts
 14 * Creation date: 05-12-2008
 15 * 
 16 * XDoclet definition:
 17 * @struts.form name="newsForm"
 18 */

 19 public   class  NewsForm  extends  ActionForm  {
 20    /*
 21     * Generated fields
 22     */

 23
 24    /** title property */
 25    private String title;
 26
 27    /** content property */
 28    private String content;
 29
 30    /** author property */
 31    private String author;
 32
 33    /** id property */
 34    private Integer id;
 35    
 36    /** type property */
 37    private String type;
 38
 39    /*
 40     * Generated Methods
 41     */

 42
 43    /** 
 44     * Method validate
 45     * @param mapping
 46     * @param request
 47     * @return ActionErrors
 48     */

 49    public ActionErrors validate(ActionMapping mapping,
 50            HttpServletRequest request) {
 51        // TODO Auto-generated method stub
 52        return null;
 53    }

 54
 55    /** 
 56     * Method reset
 57     * @param mapping
 58     * @param request
 59     */

 60    public void reset(ActionMapping mapping, HttpServletRequest request) {
 61        // TODO Auto-generated method stub
 62    }

 63
 64    /** 
 65     * Returns the title.
 66     * @return String
 67     */

 68    public String getTitle() {
 69        return title;
 70    }

 71
 72    /** 
 73     * Set the title.
 74     * @param title The title to set
 75     */

 76    public void setTitle(String title) {
 77        this.title = title;
 78    }

 79
 80    /** 
 81     * Returns the content.
 82     * @return String
 83     */

 84    public String getContent() {
 85        return content;
 86    }

 87
 88    /** 
 89     * Set the content.
 90     * @param content The content to set
 91     */

 92    public void setContent(String content) {
 93        this.content = content;
 94    }

 95
 96    /** 
 97     * Returns the author.
 98     * @return String
 99     */

100    public String getAuthor() {
101        return author;
102    }

103
104    /** 
105     * Set the author.
106     * @param author The author to set
107     */

108    public void setAuthor(String author) {
109        this.author = author;
110    }

111
112    /** 
113     * Returns the id.
114     * @return Integer
115     */

116    public Integer getId() {
117        return id;
118    }

119
120    /** 
121     * Set the id.
122     * @param id The id to set
123     */

124    public void setId(Integer id) {
125        this.id = id;
126    }

127
128    public String getType() {
129        return type;
130    }

131
132    public void setType(String type) {
133        this.type = type;
134    }

135}


NewsAction.java

 1 /*
 2 * Generated by MyEclipse Struts
 3 * Template path: templates/java/JavaClass.vtl
 4 */

 5 package  com.news.action;
 6
 7 import  java.io.FileInputStream;
 8 import  java.io.FileNotFoundException;
 9 import  java.io.FileOutputStream;
10 import  java.io.IOException;
11 import  java.util.Calendar;
12
13 import  javax.servlet.http.HttpServletRequest;
14 import  javax.servlet.http.HttpServletResponse;
15 import  org.apache.struts.action.Action;
16 import  org.apache.struts.action.ActionForm;
17 import  org.apache.struts.action.ActionForward;
18 import  org.apache.struts.action.ActionMapping;
19
20 import  com.news.Tools.Chinese;
21 import  com.news.dao.NewsDao;
22 import  com.news.form.NewsForm;
23
24 /** 
25 * MyEclipse Struts
26 * Creation date: 05-12-2008
27 * 
28 * XDoclet definition:
29 * @struts.action path="/news" name="newsForm" input="/news_add.jsp" scope="request" validate="true"
30 * @struts.action-forward name="news_add_ok" path="/news_add_ok.html"
31 */

32 public   class  NewsAction  extends  Action  {
33    /*
34     * Generated Methods
35     */

36
37    /** 
38     * Method execute
39     * @param mapping
40     * @param form
41     * @param request
42     * @param response
43     * @return ActionForward
44     * @throws IOException 
45     */

46    public ActionForward execute(ActionMapping mapping, ActionForm form,
47            HttpServletRequest request, HttpServletResponse response) throws IOException {
48        NewsForm newsForm = (NewsForm) form;
49        NewsDao nd = new NewsDao();
50        Chinese c = new Chinese();
51        String title = c.toChinese(newsForm.getTitle());
52        String author = c.toChinese(newsForm.getAuthor());
53        String content = c.toChinese(newsForm.getContent());
54        
55        String filePath = "";
56        String template = "module/template.htm";
57        filePath = request.getRealPath("/")+template;
58           System.out.println(filePath);
59        String templateContent="";
60        FileInputStream fileinputstream = new FileInputStream(filePath);//读取模块文件
61            int lenght = fileinputstream.available();
62            byte bytes[] = new byte[lenght];
63        fileinputstream.read(bytes);
64        fileinputstream.close();
65        templateContent = new String(bytes);
66        templateContent=templateContent.replaceAll("###title###",title);
67        templateContent=templateContent.replaceAll("###content###",content);
68        templateContent=templateContent.replaceAll("###author###",author);//替换掉模块中相应的地方
69     // 根据时间得文件名
70        Calendar calendar = Calendar.getInstance();
71        String filename = String.valueOf(calendar.getTimeInMillis()) +".html";
72        filename = request.getRealPath("/")+"Html/news/"+filename;//生成的html文件保存路径
73        FileOutputStream fileoutputstream = new FileOutputStream(filename);//建立文件输出流
74        byte tag_bytes[] = templateContent.getBytes();
75        fileoutputstream.write(tag_bytes);
76        fileoutputstream.close();
77        String url = "Html/news/"+String.valueOf(calendar.getTimeInMillis())+".html";
78        String type = c.toChinese(newsForm.getType());
79        
80        nd.addNews(title, author, content,url,type);
81        return mapping.findForward("news_add_ok");
82    }

83}



template.html

 1 < html >
 2 < head >
 3 < title > ###title### </ title >
 4 < meta  http-equiv ="Content-Type"  content ="text/html; charset=gb2312" >
 5 </ head >
 6 < body >
 7 标题:###title### < br />
 8 作者:###author### < br />
 9 内容:###content### < br />
10 </ body >
11 </ html >



还有部分文件就不贴出来了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值