這篇文章將為大家詳細(xì)講解有關(guān)使用Springboot怎么對(duì)Freemarker進(jìn)行整合,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對(duì)相關(guān)知識(shí)有一定的了解。
創(chuàng)新互聯(lián)建站是專業(yè)的解放網(wǎng)站建設(shè)公司,解放接單;提供成都做網(wǎng)站、網(wǎng)站制作、成都外貿(mào)網(wǎng)站建設(shè),網(wǎng)頁(yè)設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行解放網(wǎng)站開發(fā)網(wǎng)頁(yè)制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛(ài)的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來(lái)合作!1、導(dǎo)入依賴
org.springframework.boot spring-boot-starter-freemarker
@Controller @RequestMapping("/goodItem") public class GoodItemController { @Reference private IGoodsService goodsService; @Autowired private Configuration configuration; @RequestMapping("/createHtml") @ResponseBody public String createHtml(int gid, HttpServletRequest request){ //通過(guò)商品id獲取商品詳情信息 Goods goods = goodsService.queryById(gid); String [] images=goods.getGimage().split("\\|"); //通過(guò)模板生成商品靜態(tài)頁(yè)面 try { //獲取商品詳情的模板對(duì)象 Template template = configuration.getTemplate("goodsItem.ftl"); //準(zhǔn)備商品數(shù)據(jù) Mapmap=new HashMap<>(); map.put("goods",goods); map.put("context",request.getContextPath()); //freemarker頁(yè)面沒(méi)有分割功能,所以通過(guò)后臺(tái)將圖片分割后,將圖片數(shù)組傳到后臺(tái) map.put("images",images); //生成靜態(tài)頁(yè) //獲得classpath路徑 //靜態(tài)頁(yè)面的名稱必須和商品有所關(guān)聯(lián),最簡(jiǎn)單的方式就是用商品的id作為頁(yè)面的名字 String path = this.getClass().getResource("/static/page/").getPath()+goods.getId()+".html";; template.process(map,new FileWriter(path)); } catch (Exception e) { e.printStackTrace(); } return ""; } }
注意:
1、freemarker頁(yè)面不能通過(guò)
因此可從后臺(tái)將根路徑傳到前端,然后通過(guò)
2、當(dāng)page是一個(gè)空文件夾的時(shí)候,會(huì)報(bào)錯(cuò)。這是因?yàn)閙aven項(xiàng)目不會(huì)對(duì)空文件夾進(jìn)行打包編譯。
FreeMarker的基本語(yǔ)法
關(guān)于使用Springboot怎么對(duì)Freemarker進(jìn)行整合就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。