日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

一个简单的freemark输入输出的案例(一)

發布時間:2025/4/16 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 一个简单的freemark输入输出的案例(一) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

假如你現在還在為自己的技術擔憂,假如你現在想提升自己的工資,假如你想在職場上獲得更多的話語權,假如你想順利的度過35歲這個魔咒,假如你想體驗BAT的工作環境,那么現在請我們一起開啟提升技術之旅吧,詳情請點擊http://106.12.206.16:8080/qingruihappy/index.html

?

一、 創建FreeMarker模板文件user.ftl

1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 2 <html> 3 <head> 4 <meta http-equiv=Content-Type content="text/html; charset=utf-8"> 5 <title>user.ftl</title> 6 </head> 7 <body> 8 ${user.userName} 9 ${user.userPassword} 10 </body> 11 </html>

二、 創建FreeMarker模板文件動態綁定的數據對象類User.java(Sring中pojo)?

1 User.java 2 //..省略包的導入 3 public class User{ 4 private String userName; 5 private String userPassword; 6 …省略 getter()與setter方法 7 }

三、 創建FreeMarker模板文件解析器類FreeMarkertUtil?

1 FreeMarkertUtil.java 2 //省略包的導入 3 Public class FreeMarkerUtil{ 4 //templatePath模板文件存放路徑 5 //templateName 模板文件名稱 6 //filename 生成的文件名稱 7 public static void analysisTemplate ( String templatePath,String templateName,String fileName,Map<?,?>root ){ 8 try { 9 Configuration config=new Configuration(); 10 // 設置要解析的模板所在的目錄,并加載模板文件 11 config.setDirectoryForTemplateLoading(new File(templatePath)); 12 //設置包裝器,并將對象包裝為數據模型 13 config.setObjectWrapper(new DefaultObjectWrapper()); 14 //獲取模板,并設置編碼方式,這個編碼必須要與頁面中的編碼格式一致 15 //否則會出現亂碼 16 Template template=config.getTemplate(templateName,“UTF-8”); 17 //合并數據模型與模板 18 FileOutputStream fos = new FileOutputStream(fileName); 19 Writer out = new OutputStreamWriter(fos,“UTF-8”); 20 template.process(root, out); 21 out.flush(); 22 out.close(); 23 } catch (IOException e) { 24 e.printStackTrace(); 25 }catch (TemplateException e) { 26 e.printStackTrace(); 27 } 28 } 29 }

四、 創建FreeMarker生成靜態頁面測試類ClientTest.java

1 //..省略包的導入 2 public class ClientTest{ 3 public static void main(String[] args){ 4 User user=new User(); 5 user.setUserName("張三"); 6 user.setUserPassword("123"); 7 Map<String,Object> root=new HashMap<String, Object>(); 8 root.put("user", user); 9 String templatesPath="D:/DevPlateForm/Eclipse/workspaces/freeMakerTest/src/templates"; 10 String templateFile="/user.ftl"; 11 String htmlFile=templatesPath+"/user.html"; 12 FreeMarkertUtil.analysisTemplate(templatesPath,templateFile,htmlFile,root); 13 } 14 }

?

假如你現在還在為自己的技術擔憂,假如你現在想提升自己的工資,假如你想在職場上獲得更多的話語權,假如你想順利的度過35歲這個魔咒,假如你想體驗BAT的工作環境,那么現在請我們一起開啟提升技術之旅吧,詳情請點擊http://106.12.206.16:8080/qingruihappy/index.html

總結

以上是生活随笔為你收集整理的一个简单的freemark输入输出的案例(一)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。