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

Java 使用 freemarker 模板引擎的相关疑问 ,求大神走过路过不要错过

FreeMarker 是一个用Java编写的模板引擎,主要用来生成HTML Web页面,特别是基于MVC模式的应用程序。虽然FreeMarker具有一些编程的能力,但不像PHP,通常由Java程序准备要显示的数据,由 FreeMarker模板生成页面。 FreeMarker可以作为Web应用框架一个组件,但它与容器无关,在非Web应用程序环境也能工作的很好。 FreeMarker适合作为MVC的视图组件,还能在模板中使用JSP标记库。

成都创新互联公司-专业网站定制、快速模板网站建设、高性价比马龙网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式马龙网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖马龙地区。费用合理售后完善,10余年实体公司更值得信赖。

所以你其实是用freemarker的ftl 做前端页面来生成对应的html页面。

ftl模板 + Map数据模型 = 输出html

然后web.xml其实就是ftl的模板,使用ftl的话,其实就是java+xml利用freemarker的模板来生成HTML。当然你生成的HTML是可以跟HTML做的前端一起有的。

jstl 跟freemarker 有什么区别?

jstl 跟freemarker 的区别如下:

一、jstl 

JSTL(JSP Standard Tag Library,JSP标准标签库)是一个不断完善的开放源代码的JSP标签库,是由apache的jakarta小组来维护的。

1、使用条件

jstl带来的优雅编程体验人所皆知,在java社区蒸蒸日上的今天使用jstl已无需考虑很多问题,我们可以用myeclipse等java集成开发环境轻松搭建一个jstl的web项目。即便有了myeclipse这么得力的工具帮我们快速开发web项目,但是有一些知识我们必须了解的 ---- 那就是jstl与servlet版本,以及jsp版本之间的依赖关系。

2、优点

在应用程序服务器之间提供了一致的接口,最大程度地提高了WEB应用在各应用服务器之间的移植。

简化了JSP和WEB应用程序的开发。

二、freemarker 

FreeMarker是一个用Java语言编写的模板引擎,它基于模板来生成文本输出。FreeMarker与Web容器无关,即在Web运行时,它并不知道Servlet或HTTP。它不仅可以用作表现层的实现技术,而且还可以用于生成XML,JSP或Java 等。

1、特性

——通用

能够生成各种文本:HTML、XML、RTF、Java源代码等等。

易于嵌入到产品中:轻量级;不需要Servlet环境。

插件式模板载入器:可以从任何源载入模板,如本地文件、数据库等等。

可以按所需生成文本:保存到本地文件;作为Email发送;从Web应用程序发送它返回给Web浏览器。

——强大的模板语言

所有常用的指令:include、if/elseif/else、循环结构。

在模板中创建和改变变量。

几乎在任何地方都可以使用复杂表达式来指定值。

命名的宏,可以具有位置参数和嵌套内容。

名字空间有助于建立和维护可重用的宏库,或者将一个大工程分成模块,而不必担心名字冲突。

输出转换块:在嵌套模板片段生成输出时,转换HTML转义、压缩、语法高亮等等;可以定义自己的转换。

——通用数据模型

FreeMarker不是直接反射到Java对象,Java对象通过插件式对象封装,以变量方式在模板中显示。

可以使用抽象(接口)方式表示对象(JavaBean、XML文档、SQL查询结果集等等),告诉模板开发者使用。方法,使其不受技术细节的打扰。

为Web准备

在模板语言中内建处理典型Web相关任务(如HTML转义)的结构。

能够集成到Model2 Web应用框架中作为JSP的替代。

支持JSP标记库。

为MVC模式设计:分离可视化设计和应用程序逻辑;分离页面设计员和程序员。

2、简介

FreeMarker允许Java servlet保持图形设计同应用程序逻辑的分离,这是通过在模板中密封HTML完成的。模板用servlet提供的数据动态地生成 HTML。模板语言是强大的直观的,编译器速度快,输出接近静态HTML页面的速度。虽然FreeMarker具有一些编程的能力,但通常由Java程序准备要显示的数据,由FreeMarker生成页面,通过模板显示准备的数据。

java 模板引擎 哪个好

刚好在用freemarker做一个项目模块,freemarker上手简单,功能也很强。模板引擎大体相同。可以看一下现在的一些模板引擎:

用java开发中大型网站,一般都是用模板引擎么?比如XLTemplate、Velocity、FreeMarker这些。

这个看你网站功能和性能需求了。网上有很多关于这些技术区别的,你可以去看一看。

引用篇文章给你:

浅谈jsp、freemarker、velocity区别

作者:浮云中的毛驴

以前做web开发页面层用的基本就是就是,最近公司java项目页面层用的技术是velocity。听说jsp要淘汰,也不知道是真是假,但本人还是比较喜欢jsp的,下面是网上查找的javaweb项目页面3种技术的区别。

在java领域,表现层技术主要有三种:jsp、freemarker、velocity。

jsp是大家最熟悉的技术

优点:

1、功能强大,可以写java代码

2、支持jsp标签(jsp tag)

3、支持表达式语言(el)

4、官方标准,用户群广,丰富的第三方jsp标签库

5、性能良好。jsp编译成class文件执行,有很好的性能表现

缺点:

jsp没有明显缺点,非要挑点骨头那就是,由于可以编写java代码,如使用不当容易破坏mvc结构。

velocity是较早出现的用于代替jsp的模板语言

优点:

1、不能编写java代码,可以实现严格的mvc分离

2、性能良好,据说比jsp性能还要好些

3、使用表达式语言,据说jsp的表达式语言就是学velocity的

缺点:

1、不是官方标准

2、用户群体和第三方标签库没有jsp多。

3、对jsp标签支持不够好

freemarker

优点:

1、不能编写java代码,可以实现严格的mvc分离

2、性能非常不错

3、对jsp标签支持良好

4、内置大量常用功能,使用非常方便

5、宏定义(类似jsp标签)非常方便

6、使用表达式语言

缺点:

1、不是官方标准

2、用户群体和第三方标签库没有jsp多

选择freemarker的原因:

1、性能。velocity应该是最好的,其次是jsp,普通的页面freemarker性能最差(虽然只是几毫秒到十几毫秒的差距)。但是在复杂页面上(包含大量判断、日期金额格式化)的页面上,freemarker的性能比使用tag和el的jsp好。

2、宏定义比jsp tag方便

3、内置大量常用功能。比如html过滤,日期金额格式化等等,使用非常方便

4、支持jsp标签

5、可以实现严格的mvc分离

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

模板引擎就是用于制作页面模板的。啥是模板?不就是做好模子,然后套入数据,就成一个产品了吗?模板引擎有很多,常用的有freemarker、velocity等。它们都有自己的语法,只为简化页面数据展示。只要你稍微了解一下freemarker,就能很好的理解什么是模板了。

分享标题:java代码生成模板引擎 javaweb模板引擎
转载注明:https://www.cdcxhl.com/article20/hideco.html

成都网站建设公司_创新互联,为您提供自适应网站微信公众号建站公司网站维护用户体验小程序开发

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

营销型网站建设