真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

java代碼生成模板引擎 javaweb模板引擎

Java 使用 freemarker 模板引擎的相關(guān)疑問(wèn) ,求大神走過(guò)路過(guò)不要錯(cuò)過(guò)

FreeMarker 是一個(gè)用Java編寫(xiě)的模板引擎,主要用來(lái)生成HTML Web頁(yè)面,特別是基于MVC模式的應(yīng)用程序。雖然FreeMarker具有一些編程的能力,但不像PHP,通常由Java程序準(zhǔn)備要顯示的數(shù)據(jù),由 FreeMarker模板生成頁(yè)面。 FreeMarker可以作為Web應(yīng)用框架一個(gè)組件,但它與容器無(wú)關(guān),在非Web應(yīng)用程序環(huán)境也能工作的很好。 FreeMarker適合作為MVC的視圖組件,還能在模板中使用JSP標(biāo)記庫(kù)。

成都創(chuàng)新互聯(lián)公司-專(zhuān)業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性?xún)r(jià)比馬龍網(wǎng)站開(kāi)發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫(kù),直接使用。一站式馬龍網(wǎng)站制作公司更省心,省錢(qián),快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋馬龍地區(qū)。費(fèi)用合理售后完善,10余年實(shí)體公司更值得信賴(lài)。

所以你其實(shí)是用freemarker的ftl 做前端頁(yè)面來(lái)生成對(duì)應(yīng)的html頁(yè)面。

ftl模板 + Map數(shù)據(jù)模型 = 輸出html

然后web.xml其實(shí)就是ftl的模板,使用ftl的話,其實(shí)就是java+xml利用freemarker的模板來(lái)生成HTML。當(dāng)然你生成的HTML是可以跟HTML做的前端一起有的。

jstl 跟freemarker 有什么區(qū)別?

jstl 跟freemarker 的區(qū)別如下:

一、jstl?

JSTL(JSP Standard Tag Library,JSP標(biāo)準(zhǔn)標(biāo)簽庫(kù))是一個(gè)不斷完善的開(kāi)放源代碼的JSP標(biāo)簽庫(kù),是由apache的jakarta小組來(lái)維護(hù)的。

1、使用條件

jstl帶來(lái)的優(yōu)雅編程體驗(yàn)人所皆知,在java社區(qū)蒸蒸日上的今天使用jstl已無(wú)需考慮很多問(wèn)題,我們可以用myeclipse等java集成開(kāi)發(fā)環(huán)境輕松搭建一個(gè)jstl的web項(xiàng)目。即便有了myeclipse這么得力的工具幫我們快速開(kāi)發(fā)web項(xiàng)目,但是有一些知識(shí)我們必須了解的 ---- 那就是jstl與servlet版本,以及jsp版本之間的依賴(lài)關(guān)系。

2、優(yōu)點(diǎn)

在應(yīng)用程序服務(wù)器之間提供了一致的接口,最大程度地提高了WEB應(yīng)用在各應(yīng)用服務(wù)器之間的移植。

簡(jiǎn)化了JSP和WEB應(yīng)用程序的開(kāi)發(fā)。

二、freemarker?

FreeMarker是一個(gè)用Java語(yǔ)言編寫(xiě)的模板引擎,它基于模板來(lái)生成文本輸出。FreeMarker與Web容器無(wú)關(guān),即在Web運(yùn)行時(shí),它并不知道Servlet或HTTP。它不僅可以用作表現(xiàn)層的實(shí)現(xiàn)技術(shù),而且還可以用于生成XML,JSP或Java 等。

1、特性

——通用

能夠生成各種文本:HTML、XML、RTF、Java源代碼等等。

易于嵌入到產(chǎn)品中:輕量級(jí);不需要Servlet環(huán)境。

插件式模板載入器:可以從任何源載入模板,如本地文件、數(shù)據(jù)庫(kù)等等。

可以按所需生成文本:保存到本地文件;作為Email發(fā)送;從Web應(yīng)用程序發(fā)送它返回給Web瀏覽器。

——強(qiáng)大的模板語(yǔ)言

所有常用的指令:include、if/elseif/else、循環(huán)結(jié)構(gòu)。

在模板中創(chuàng)建和改變變量。

幾乎在任何地方都可以使用復(fù)雜表達(dá)式來(lái)指定值。

命名的宏,可以具有位置參數(shù)和嵌套內(nèi)容。

名字空間有助于建立和維護(hù)可重用的宏庫(kù),或者將一個(gè)大工程分成模塊,而不必?fù)?dān)心名字沖突。

輸出轉(zhuǎn)換塊:在嵌套模板片段生成輸出時(shí),轉(zhuǎn)換HTML轉(zhuǎn)義、壓縮、語(yǔ)法高亮等等;可以定義自己的轉(zhuǎn)換。

——通用數(shù)據(jù)模型

FreeMarker不是直接反射到Java對(duì)象,Java對(duì)象通過(guò)插件式對(duì)象封裝,以變量方式在模板中顯示。

可以使用抽象(接口)方式表示對(duì)象(JavaBean、XML文檔、SQL查詢(xún)結(jié)果集等等),告訴模板開(kāi)發(fā)者使用。方法,使其不受技術(shù)細(xì)節(jié)的打擾。

為Web準(zhǔn)備

在模板語(yǔ)言中內(nèi)建處理典型Web相關(guān)任務(wù)(如HTML轉(zhuǎn)義)的結(jié)構(gòu)。

能夠集成到Model2 Web應(yīng)用框架中作為JSP的替代。

支持JSP標(biāo)記庫(kù)。

為MVC模式設(shè)計(jì):分離可視化設(shè)計(jì)和應(yīng)用程序邏輯;分離頁(yè)面設(shè)計(jì)員和程序員。

2、簡(jiǎn)介

FreeMarker允許Java servlet保持圖形設(shè)計(jì)同應(yīng)用程序邏輯的分離,這是通過(guò)在模板中密封HTML完成的。模板用servlet提供的數(shù)據(jù)動(dòng)態(tài)地生成 HTML。模板語(yǔ)言是強(qiáng)大的直觀的,編譯器速度快,輸出接近靜態(tài)HTML頁(yè)面的速度。雖然FreeMarker具有一些編程的能力,但通常由Java程序準(zhǔn)備要顯示的數(shù)據(jù),由FreeMarker生成頁(yè)面,通過(guò)模板顯示準(zhǔn)備的數(shù)據(jù)。

java 模板引擎 哪個(gè)好

剛好在用freemarker做一個(gè)項(xiàng)目模塊,freemarker上手簡(jiǎn)單,功能也很強(qiáng)。模板引擎大體相同??梢钥匆幌卢F(xiàn)在的一些模板引擎:

用java開(kāi)發(fā)中大型網(wǎng)站,一般都是用模板引擎么?比如XLTemplate、Velocity、FreeMarker這些。

這個(gè)看你網(wǎng)站功能和性能需求了。網(wǎng)上有很多關(guān)于這些技術(shù)區(qū)別的,你可以去看一看。

引用篇文章給你:

淺談jsp、freemarker、velocity區(qū)別

作者:浮云中的毛驢

以前做web開(kāi)發(fā)頁(yè)面層用的基本就是就是,最近公司java項(xiàng)目頁(yè)面層用的技術(shù)是velocity。聽(tīng)說(shuō)jsp要淘汰,也不知道是真是假,但本人還是比較喜歡jsp的,下面是網(wǎng)上查找的javaweb項(xiàng)目頁(yè)面3種技術(shù)的區(qū)別。

在java領(lǐng)域,表現(xiàn)層技術(shù)主要有三種:jsp、freemarker、velocity。

jsp是大家最熟悉的技術(shù)

優(yōu)點(diǎn):

1、功能強(qiáng)大,可以寫(xiě)java代碼

2、支持jsp標(biāo)簽(jsp tag)

3、支持表達(dá)式語(yǔ)言(el)

4、官方標(biāo)準(zhǔn),用戶(hù)群廣,豐富的第三方j(luò)sp標(biāo)簽庫(kù)

5、性能良好。jsp編譯成class文件執(zhí)行,有很好的性能表現(xiàn)

缺點(diǎn):

jsp沒(méi)有明顯缺點(diǎn),非要挑點(diǎn)骨頭那就是,由于可以編寫(xiě)java代碼,如使用不當(dāng)容易破壞mvc結(jié)構(gòu)。

velocity是較早出現(xiàn)的用于代替jsp的模板語(yǔ)言

優(yōu)點(diǎn):

1、不能編寫(xiě)java代碼,可以實(shí)現(xiàn)嚴(yán)格的mvc分離

2、性能良好,據(jù)說(shuō)比jsp性能還要好些

3、使用表達(dá)式語(yǔ)言,據(jù)說(shuō)jsp的表達(dá)式語(yǔ)言就是學(xué)velocity的

缺點(diǎn):

1、不是官方標(biāo)準(zhǔn)

2、用戶(hù)群體和第三方標(biāo)簽庫(kù)沒(méi)有jsp多。

3、對(duì)jsp標(biāo)簽支持不夠好

freemarker

優(yōu)點(diǎn):

1、不能編寫(xiě)java代碼,可以實(shí)現(xiàn)嚴(yán)格的mvc分離

2、性能非常不錯(cuò)

3、對(duì)jsp標(biāo)簽支持良好

4、內(nèi)置大量常用功能,使用非常方便

5、宏定義(類(lèi)似jsp標(biāo)簽)非常方便

6、使用表達(dá)式語(yǔ)言

缺點(diǎn):

1、不是官方標(biāo)準(zhǔn)

2、用戶(hù)群體和第三方標(biāo)簽庫(kù)沒(méi)有jsp多

選擇freemarker的原因:

1、性能。velocity應(yīng)該是最好的,其次是jsp,普通的頁(yè)面freemarker性能最差(雖然只是幾毫秒到十幾毫秒的差距)。但是在復(fù)雜頁(yè)面上(包含大量判斷、日期金額格式化)的頁(yè)面上,freemarker的性能比使用tag和el的jsp好。

2、宏定義比jsp tag方便

3、內(nèi)置大量常用功能。比如html過(guò)濾,日期金額格式化等等,使用非常方便

4、支持jsp標(biāo)簽

5、可以實(shí)現(xiàn)嚴(yán)格的mvc分離

在java中,什么是模版引擎?

模板引擎就是用于制作頁(yè)面模板的。啥是模板?不就是做好模子,然后套入數(shù)據(jù),就成一個(gè)產(chǎn)品了嗎?模板引擎有很多,常用的有freemarker、velocity等。它們都有自己的語(yǔ)法,只為簡(jiǎn)化頁(yè)面數(shù)據(jù)展示。只要你稍微了解一下freemarker,就能很好的理解什么是模板了。


分享名稱(chēng):java代碼生成模板引擎 javaweb模板引擎
分享地址:http://weahome.cn/article/hideco.html

其他資訊

在線咨詢(xún)

微信咨詢(xún)

電話咨詢(xún)

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部