如何在java中实现自动生成html
我现在在制作java毕业项目,一个新闻发布系统.用hibernate+struts做的想要实现用户游览新闻的时候,游览的是静态页面.但是如何让新闻发布人员发布新闻后生成静...
我现在在制作java毕业项目,一个新闻发布系统.
用hibernate+struts做的
想要实现用户游览新闻的时候,游览的是静态页面.
但是如何让新闻发布人员发布新闻后生成静态页面?
是在保存到数据库的时候,还是在查询新闻的时候? 展开
用hibernate+struts做的
想要实现用户游览新闻的时候,游览的是静态页面.
但是如何让新闻发布人员发布新闻后生成静态页面?
是在保存到数据库的时候,还是在查询新闻的时候? 展开
6个回答
推荐于2016-11-01 · 知道合伙人数码行家
关注
展开全部
创建一个StringBuilder对象,通过append方法来为其添加html语句。
StringBuilder sb = new StringBuilder();
Properties fileProperties = getProperties("file");
Properties sqlProperties = getProperties("sql");
PrintStream printStream = new PrintStream(new FileOutputStream(
"report.html"));
sb.append("<html>");
sb.append("<head>");
sb.append("<title>每日运营报表</title>");
sb.append("<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />");
sb.append("<style type=\"text/css\">");
sb.append("TABLE{border-collapse:collapse;border-left:solid 1 #000000; border-top:solid 1 #000000;padding:5px;}");
sb.append("TH{border-right:solid 1 #000000;border-bottom:solid 1 #000000;}");
sb.append("TD{font:normal;border-right:solid 1 #000000;border-bottom:solid 1 #000000;}");
sb.append("</style></head>");
sb.append("<body bgcolor=\"#FFF8DC\">");
sb.append("<div align=\"center\">");
sb.append("<br/>");
sb.append("<br/>");
List<Map<String, Object>> result1 = getRpt(sqlProperties
.getProperty("sql1"));
for (Map.Entry<String, Object> m : result1.get(0).entrySet()) {
sb.append(fileProperties.getProperty("file1"));
sb.append(m.getValue());
}
sb.append("<br/><br/>");
输出
sb.append("</div></body></html>");
printStream.println(sb.toString());
StringBuilder sb = new StringBuilder();
Properties fileProperties = getProperties("file");
Properties sqlProperties = getProperties("sql");
PrintStream printStream = new PrintStream(new FileOutputStream(
"report.html"));
sb.append("<html>");
sb.append("<head>");
sb.append("<title>每日运营报表</title>");
sb.append("<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />");
sb.append("<style type=\"text/css\">");
sb.append("TABLE{border-collapse:collapse;border-left:solid 1 #000000; border-top:solid 1 #000000;padding:5px;}");
sb.append("TH{border-right:solid 1 #000000;border-bottom:solid 1 #000000;}");
sb.append("TD{font:normal;border-right:solid 1 #000000;border-bottom:solid 1 #000000;}");
sb.append("</style></head>");
sb.append("<body bgcolor=\"#FFF8DC\">");
sb.append("<div align=\"center\">");
sb.append("<br/>");
sb.append("<br/>");
List<Map<String, Object>> result1 = getRpt(sqlProperties
.getProperty("sql1"));
for (Map.Entry<String, Object> m : result1.get(0).entrySet()) {
sb.append(fileProperties.getProperty("file1"));
sb.append(m.getValue());
}
sb.append("<br/><br/>");
输出
sb.append("</div></body></html>");
printStream.println(sb.toString());
2015-09-18 · 知道合伙人金融证券行家
关注
展开全部
创建一个StringBuilder对象,通过append方法来为其添加html语句。
StringBuilder sb = new StringBuilder();
Properties fileProperties = getProperties("file");
Properties sqlProperties = getProperties("sql");
PrintStream printStream = new PrintStream(new FileOutputStream(
"report.html"));
sb.append("<html>");
sb.append("<head>");
sb.append("<title>每日运营报表</title>");
sb.append("<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />");
sb.append("<style type=\"text/css\">");
sb.append("TABLE{border-collapse:collapse;border-left:solid 1 #000000; border-top:solid 1 #000000;padding:5px;}");
sb.append("TH{border-right:solid 1 #000000;border-bottom:solid 1 #000000;}");
sb.append("TD{font:normal;border-right:solid 1 #000000;border-bottom:solid 1 #000000;}");
sb.append("</style></head>");
sb.append("<body bgcolor=\"#FFF8DC\">");
sb.append("<div align=\"center\">");
sb.append("<br/>");
sb.append("<br/>");
List<Map<String, Object>> result1 = getRpt(sqlProperties
.getProperty("sql1"));
for (Map.Entry<String, Object> m : result1.get(0).entrySet()) {
sb.append(fileProperties.getProperty("file1"));
sb.append(m.getValue());
}
sb.append("<br/><br/>");
输出
sb.append("</div></body></html>");
printStream.println(sb.toString());
StringBuilder sb = new StringBuilder();
Properties fileProperties = getProperties("file");
Properties sqlProperties = getProperties("sql");
PrintStream printStream = new PrintStream(new FileOutputStream(
"report.html"));
sb.append("<html>");
sb.append("<head>");
sb.append("<title>每日运营报表</title>");
sb.append("<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />");
sb.append("<style type=\"text/css\">");
sb.append("TABLE{border-collapse:collapse;border-left:solid 1 #000000; border-top:solid 1 #000000;padding:5px;}");
sb.append("TH{border-right:solid 1 #000000;border-bottom:solid 1 #000000;}");
sb.append("TD{font:normal;border-right:solid 1 #000000;border-bottom:solid 1 #000000;}");
sb.append("</style></head>");
sb.append("<body bgcolor=\"#FFF8DC\">");
sb.append("<div align=\"center\">");
sb.append("<br/>");
sb.append("<br/>");
List<Map<String, Object>> result1 = getRpt(sqlProperties
.getProperty("sql1"));
for (Map.Entry<String, Object> m : result1.get(0).entrySet()) {
sb.append(fileProperties.getProperty("file1"));
sb.append(m.getValue());
}
sb.append("<br/><br/>");
输出
sb.append("</div></body></html>");
printStream.println(sb.toString());
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-08-16
展开全部
你的意思把动态页面静态化 很多大型网站都是这样做的 比较安全JAVA 里可以用下面的代码来转换 自己看吧 package com.klstudio.util;import java.io.*;import java.net.*;public class Tools { final static Object lock = new Object(); public static void makeHtml(String page, String filePath){ makeHtml(page,filePath,"UTF-8"); } public static void makeHtml(String page, String filePath,String chartset) { synchronized (lock) { HttpURLConnection huc = null; BufferedReader br = null; BufferedWriter bw = null; try { huc = (HttpURLConnection)new URL(page).openConnection(); System.setProperty("sun.net.client.defaultConnectTimeout", "30000"); System.setProperty("sun.net.client.defaultReadTimeout", "30000"); huc.connect(); InputStream stream = huc.getInputStream(); bw = new BufferedWriter(new OutputStreamWriter (new FileOutputStream(filePath),chartset)); br = new BufferedReader(new InputStreamReader(stream, chartset)); String line; while((line = br.readLine())!= null){ if(line.trim().length() > 0){ bw.write(line); bw.newLine(); } } }catch (Exception e) { e.printStackTrace(); }finally { try { br.close(); bw.close(); huc.disconnect(); }catch (Exception e) { e.printStackTrace(); } } }}参考资料: http://blog.csdn.net/txyhl/archive/2007/04/24/1577001.aspx
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-08-16
展开全部
hibernate+struts 现在还算比较流行的框架,算你们学校跟得上时代!~我们不需要这样做!~你可以换个思路!~为什么要生成个页面呢? 感觉不合逻辑!~页面一般都是写好在那里!放上不同的数据不就变成了不同的所谓的静态页面的!~换个角度想问题!~如果你需要我倒是可以给你做个!~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-08-16
展开全部
楼上几位都说了不少法了,我想个比较BT的:
写个xslt,用javax.xml.parsers.*;和org.w3c.dom.*;动态产生xml按照xslt格式化输出好像也可行。哈哈 。
写个xslt,用javax.xml.parsers.*;和org.w3c.dom.*;动态产生xml按照xslt格式化输出好像也可行。哈哈 。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询