這篇文章主要講解了“SpringMVC和模板引擎的關(guān)系”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“SpringMVC和模板引擎的關(guān)系”吧!
站在用戶的角度思考問(wèn)題,與客戶深入溝通,找到潢川網(wǎng)站設(shè)計(jì)與潢川網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類(lèi)型包括:做網(wǎng)站、成都做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、申請(qǐng)域名、雅安服務(wù)器托管、企業(yè)郵箱。業(yè)務(wù)覆蓋潢川地區(qū)。
模板引擎(這里特指用于Web開(kāi)發(fā)的模板引擎)是為了使用戶界面與業(yè)務(wù)數(shù)據(jù)(內(nèi)容)分離而產(chǎn)生的,它可以生成特定格式的文檔,用于網(wǎng)站的模板引擎就會(huì)生成一個(gè)標(biāo)準(zhǔn)的文檔。
模板引擎的基本機(jī)理就是替換(轉(zhuǎn)換),將指定的標(biāo)簽轉(zhuǎn)換為需要的業(yè)務(wù)數(shù)據(jù);將指定的偽語(yǔ)句按照某種流程來(lái)變換輸出。
SpringMVC處理請(qǐng)求的流程圖: 模板引擎發(fā)揮作用是在第8,9,10步驟。
更詳細(xì)的原理介紹,點(diǎn)我跳轉(zhuǎn)
重點(diǎn)介紹Velocity,因?yàn)槠?010年以后連續(xù)6年沒(méi)有更新,版本停留在1.7,直到最近兩年才有更新,最新版本是2019年3月更新的2.1,但是變化并不大。
Spring官網(wǎng)原文: As of Spring Framework 4.3, Velocity support has been deprecated due to six years without active maintenance of the Apache Velocity project. We recommend Spring’s FreeMarker support instead, or Thymeleaf which comes with Spring support itself.
Spring Framework 4.3、SpringBoot 1.5刪除了對(duì)Velocity的支持, 所以想在后續(xù)版本使用,需要手動(dòng)引入。
JSP使用的視圖解析器:InternalResourceViewResovler繼承了UrlBasedViewResolver
Freemarker和Velocity的視頻解析器:FreemarkerViewResolver和VelocityViewResolver,兩種解析器都繼承了AbstractTemplateViewResolver
FreeMarker視圖解析器繼承關(guān)系: Velocity視圖解析器繼承關(guān)系:
JSP只能運(yùn)行在servlet容器中,其他模板引擎沒(méi)有限制,而且其他模板引擎并不是只用于web開(kāi)發(fā)(由于提前編譯,JSP的速度也最快)
當(dāng)SpringBoot啟用一個(gè)內(nèi)嵌的servlet容器啟動(dòng)時(shí),對(duì)JSP的支持有一些限制:
使用tomcat或者使用jetty時(shí),需要使用war包。tomcat/jetty中由于硬編碼了文件模式,可執(zhí)行jar不能運(yùn)行JSP
Undertow不支持JSP
創(chuàng)建的自定義error.jsp無(wú)法覆蓋默認(rèn)的錯(cuò)誤處理
在docker中使用JSP要注意:由于jsp渲染后會(huì)生成java文件和class文件存放在磁盤(pán),如果使用docker需要指定環(huán)境變量中的temp目錄
學(xué)習(xí)難度: Thymeleaf < Velocity < JSP
Thymeleaf更接近h6語(yǔ)法,現(xiàn)代模板語(yǔ)法
移植性:
Thymeleaf:移植性強(qiáng),有Spring生態(tài)
Velocity:移植性強(qiáng),缺少周邊生態(tài)
JSP:必須是Servlet或者JSP容器
性能:
Themeleaf:解釋執(zhí)行,性能較差(后臺(tái)用,前臺(tái)最好別用)
Velocity:解釋執(zhí)行,性能良好(采用了大量反射)
JSP:性能最好,因?yàn)橄确g成源碼再編譯執(zhí)行,性能優(yōu)秀
感謝各位的閱讀,以上就是“SpringMVC和模板引擎的關(guān)系”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)SpringMVC和模板引擎的關(guān)系這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!
本文題目:SpringMVC和模板引擎的關(guān)系
標(biāo)題路徑:http://www.2m8n56k.cn/article10/ijccgo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)建站、網(wǎng)站維護(hù)、微信公眾號(hào)、營(yíng)銷(xiāo)型網(wǎng)站建設(shè)、響應(yīng)式網(wǎng)站、商城網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:[email protected]。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)