程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA編程入門知識 >> 用java生成html文件實現原理及代碼

用java生成html文件實現原理及代碼

編輯:JAVA編程入門知識
原理跟用java生成jsp的servlet差不多。我們可以用printStream來向html文件裡輸出數據。
先創建一個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());

再上傳一張我用java生成的一個測試html,還沒有調用線上數據。大家在實際應用的時候可以利用sql語句,list來填充表格。
 
下面給一個我寫的例子
代碼如下:

sb.append("<table border=\"1\"><tr>");
for (Map.Entry<String, Object> m : result.get(0).entrySet()) {
sb.append("<th>");
sb.append(m.getKey());
sb.append("</th>");
}
sb.append("</tr>");
for (int i = 0; i < result.size(); i++) {
sb.append("<tr>");
for (Map.Entry<String, Object> m : result.get(i).entrySet()) {
sb.append("<td>");
sb.append(m.getValue());
sb.append("</td>");
}
sb.append("</tr>");
}
sb.append("</table>");

故事就是這樣。下集更精彩~
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved