java - freemarker如何實(shí)現(xiàn)這種賊簡(jiǎn)單的效果
問(wèn)題描述
模板
<!DOCTYPE html><html><head><#include 'baseHeader.html' /><#macro head ><#nested></#macro><#macro style ><#nested></#macro></head><body><#macro content > <#nested></#macro></body><#macro script > <#nested></#macro></html>
頁(yè)面調(diào)用
<#include '/layout/master.ftl' /><@script>var a=1;</@script>
結(jié)果生成的頁(yè)面,這句var a=1;跑到了</html>后面,也就是模板的最后面,并沒(méi)有出現(xiàn)在模板對(duì)應(yīng)的位置。
本人搞了幾年.net,感覺這種模板要出我的效果應(yīng)該是理所當(dāng)然的。但是在java上,貌似要實(shí)現(xiàn)我預(yù)料中的效果,不容易?
問(wèn)題解答
回答1:freemarker不是基于layout的,它只是做表達(dá)式求值和文本替換,是不能滿足你的要求的。
據(jù)我所知:
Struts配合Tiles插件可以達(dá)到你要的layout效果。
Thymeleaf配合thymeleaf-layout-dialect也可以達(dá)到你要的效果。
回答2:宏的用法不對(duì),可以參考下面
<!-- 定義宏用 <#macro macroName parameterList> --><#macro list title items> <p>${title?cap_first}: <ul><#list items as item><li>${item}</#list> </ul></#macro><!-- 調(diào)用宏用 <@macroName arguments> --><@list items=animals/>
相關(guān)文章:
1. python - oslo_config2. php傳對(duì)應(yīng)的id值為什么傳不了啊有木有大神會(huì)的看我下方截圖3. python - scrapy url去重4. 關(guān)于mysql聯(lián)合查詢一對(duì)多的顯示結(jié)果問(wèn)題5. 實(shí)現(xiàn)bing搜索工具urlAPI提交6. 數(shù)據(jù)庫(kù) - Mysql的存儲(chǔ)過(guò)程真的是個(gè)坑!求助下面的存儲(chǔ)過(guò)程哪里錯(cuò)啦,實(shí)在是找不到哪里的問(wèn)題了。7. python - Django有哪些成功項(xiàng)目?8. 小白學(xué)python的問(wèn)題 關(guān)于%d和%s的區(qū)別9. MySQL主鍵沖突時(shí)的更新操作和替換操作在功能上有什么差別(如圖)10. Python從URL中提取域名
