freemarker和jsp的不同
运行机制就不大一样,jsp是编译成继承自servlet的class文件,运行jsp就是运行一个servlet而freemarker就是套模板,通过模板+内容直接生成HTML然后输出从开发角度来说freemarker 自带一套模板语言,语法实现更简单直观,而且可以通过marco宏编写控件,如果宏无法满足,freemarker也还提供了很多JAVA扩展接口。
而JSP不管JSTL还是其他,都是靠taglib实现的,taglib的效率其实并不高,所以在复杂页面的渲染上 ,freemarker会明显高于jsp同时 ,freemarker也不仅仅局限于B/S应用,可以广泛应用到比如代码生成、票据打印模板等各个方面...
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生成页面,通过模板显示准备的数据。
freemarker和jstl的区别
JSTL是SUN推出的标准,它不依赖与任何框架,只要将jar包引入,并在页面中引入即可使用,JSTL的流行依赖于它强大的标签库。
而FREEMARKER是一个用Java语言编写的模板引擎,它基于模板来生成文本输出。
FreeMarker与Web容器无关,即在Web运行时,它并不知道Servlet或HTTP。
它不仅可以用作表现层的实现技术,而且还可以用于生成XML,JSP或Java 等。
FreeMarker允许Java servlet保持图形设计同应用程序逻辑的分离,这是通过在模板中密封HTML完成的。
模板用servlet提供的数据动态地生成 HTML。
模板语言是强大的直观的,编译器速度快,输出接近静态HTML页面的速度。
虽然FreeMarker具有一些编程的能力,但通常由Java程序准备要显示的数据,由FreeMarker生成页面,通过模板显示准备的数据。
...
要在jsp中使用freemarker需要导入什么包?
导入freemarker-x.x.xx.jarFreeMarker是一个用Java语言编写的模板引擎,它基于模板来生成文本输出。
FreeMarker与Web容器无关,即在Web运行时,它并不知道Servlet或HTTP。
它不仅可以用作表现层的实现技术,而且还可以用于生成XML,JSP或Java 等一、特性1、通用能够生成各种文本:HTML、XML、RTF、Java源代码等等。
易于嵌入到产品中:轻量级;不需要Servlet环境。
插件式模板载入器:可以从任何源载入模板,如本地文件、数据库等等。
可以按所需生成文本:保存到本地文件;作为Email发送;从Web应用程序发送它返回给Web浏览器。
2、强大的模板语言所有常用的指令:include、if/elseif/else、循环结构。
在模板中创建和改变变量。
几乎在任何地方都可以使用复杂表达式来指定值。
命名的宏,可以具有位置参数和嵌套内容。
名字空间有助于建立和维护可重用的宏库,或者将一个大工程分成模块,而不必担心名字冲突。
输出转换块:在嵌套模板片段生成输出时,转换HTML转义、压缩、语法高亮等等;可以定义自己的转换。
3、通用数据模型FreeMarker不是直接反射到Java对象,Java对象通过插件式对象封装,以变量方式在模板中显示。
可以使用抽象(接口)方式表示对象(JavaBean、XML文档、SQL查询结果集等等),告诉模板开发者使用。
方法,使其不受技术细节的打扰。
4、为Web准备在模板语言中内建处理典型Web相关任务(如HTML转义)的结构。
能够集成到Model2 Web应用框架中作为JSP的替代。
支持JSP标记库。
为MVC模式设计:分离可视化设计和应用程序逻辑;分离页面设计员和程序员。
5、智能的国际化和本地化字符集智能化(内部使用UNICODE)。
数字格式本地化敏感。
日期和时间格式本地化敏感。
非US字符集可以用作标识(如变量名)。
多种不同语言的相同模板。
6、强大的XML处理能力和指令(2.3版本)用于递归遍历XML树。
在模板中清楚和直接的访问XML对象模型。
二、版本发布2009年12月10日,模板引擎 FreeMarker 2.3.16 发布。
2011年05月17日,FreeMarker 2.3.17 发布,该版本主要修复了安全的bug,也包含一些很小的新特性。
2011年05月22日,FreeMarker 2.3.18 发布, 修复JSP 标签库相关的bug。
2012年2月29日,FreeMarker 2.3.19 发布,该版本修复了两个重要的安全 bug,详情请看这里。
另外新增对 JSON 字符串进行处理的方法 json_string.还有其他方面的小改动2015年3月1日,FreeMarker 2.3.22发布,在FTL模板上做了一些更改,在Java上做了一些更改。
Freemarker中判断怎么解释?
这句话意思是: A?? 判断A是不是存在,A==0 判断 A是否等于0。
Freemaker FreeMarker是一个用Java语言编写的模板引擎,它基于模板来生成文本输出。
FreeMarker与Web容器无关,即在Web运行时,它并不知道Servlet或HTTP。
它不仅可以用作表现层的实现技术,而且还可以用于生成XML,JSP或Java 等。
简介 FreeMarker允许Java servlet保持图形设计同应用程序逻辑的分离,这是通过在模板中密封HTML完成的。
模板用servlet提供的数据动态地生成 HTML。
模板语言是强大的直观的,编译器速度快,输出接近静态HTML页面的速度。
虽然FreeMarker具有一些编程的能力,但通常由Java程序准备要显示的数据,由FreeMarker生成页面,通过模板显示准备的数据。
FreeMarker与容器无关,因为它并不知道HTTP或Servlet;FreeMarker同样可以应用于非Web应用程序环境,FreeMarker更适合作为Model2框架(如Struts)的视图组件,可以在模板中使用JSP标记库,FreeMarker是免费的。
特性 通用 能够生成各种文本: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模式设计:分离可视化设计和应用程序逻辑;分离页面设计员和程序员。
[4] 智能的国际化和本地化 字符集智能化(内部使用UNICODE)。
数字格式本地化敏感。
日期和时间格式本地化敏感。
非US字符集可以用作标识(如变量名)。
多种不同语言的相同模板。
强大的XML处理能力 和指令(2.3版本)用于递归遍历XML树。
在模板中清楚和直觉的访问XML对象模型。
版本发布 2002年03月18日。
FreeMarker 2.0 RC1 版第一次公开发行。
2002-10-17 2.1版本发布发。
2009年12月10日,模板引擎FreeMarker 2.3.16 发布。
2011年05月17日,FreeMarker 2.3.17 发布,该版本主要修复了安全的bug,也包含一些很小的新特性。
2011年05月22日,FreeMarker 2.3.18 发布, 修复JSP 标签库相关的bug。
2012年2月29日,FreeMarker 2.3.19 发布,该版本修复了两个重要的安全 bug,详情请看这里。
另外新增对 JSON 字符串进行处理的方法json_string.还有其他方面的小改动。
[8]
freemarker和jsp的区别
语法实现更简单直观,而且可以通过marco宏编写控件,如果宏无法满足,freemarker也还提供了很多JAVA扩展接口。
而JSP不管JSTL还是其他运行机制就不大一样,jsp是编译成继承自servlet的class文件,运行jsp就是运行一个servlet而freemarker就是套模板,可以广泛应用到比如代码生成,通过模板+内容直接生成HTML然后输出从开发角度来说freemarker 自带一套模板语言,所以在复杂页面的渲染上 ,freemarker会明显高于jsp同时 ,freemarker也不仅仅局限于B/,都是靠taglib实现的,taglib的效率其实并不高;S应用
freemarker 里 ?? 和 ? 都是什么意思?
FreeMarker是一款模板引擎: 即一种基于模板和要改变的数据, 并用来生成输出文本(HTML网页、电子邮件、配置文件、源代码等)的通用工具。
它不是面向最终用户的,而是一个Java类库,是一款程序员可以嵌入他们所开发产品的组件。
FreeMarker是免费的,基于Apache许可证2.0版本发布。
其模板编写为FreeMarker Template Language(FTL),属于简单、专用的语言。
需要准备数据在真实编程语言中来显示,比如数据库查询和业务运算, 之后模板显示已经准备好的数据。
在模板中,主要用于如何展现数据, 而在模板之外注意于要展示什么数据。
在所有采用网页静态化手段的网站中,FreeMarker使用的比例大大的超过了其他的一些技术。
HTML静态化也是某些缓存策略使用的手段,对于系统中频繁使用数据库查询但是内容更新很小的应用,可以使用FreeMarker将HTML静态化。
比如一些网站的公用设置信息,这些信息基本都是可以通过后台来管理并存储在数据库中,这些信息其实会大量的被前台程序调用,每一次调用都会去查询一次数据库,但是这些信息的更新频率又会很小,因此也可以考虑将这部分内容进行后台更新的时候进行静态化,这样就避免了大量的数据库访问请求,从而也就提高了网站的性能。
与JSP相比,FreeMarker的一个优点在于不能轻易突破模板语言开始编写Java代码,因此降低了领域逻辑漏进视图层的危险几率。
但缺点是需要一点附加配置来将其平稳地集成到应用程序中,一些IDE(集成开发环境)可能并不完全支持它,当然还有开发者或设计者也许需要学习一门陌生的模板语言。
相关的JAR文件将要添加到WEB-INF/lib(在需要的时候,它们包含在Spring中)。
...
为什么 freemarker 生成的word openoffice 打不开
1.问:WORD里边怎样设置每页不同的页眉?如何使不同的章节显示的页眉不同? 答:分节,每节可以设置不同的页眉。
文件——页面设置——版式——页眉和页脚——首页不同 2.问:请问word中怎样让每一章用不同的页眉?怎么我现在只能用一个页眉,一改就全部改了?答:在插入分隔符里,选插入分节符,可以选连续的那个,然后下一页改页眉前,按一下“同前”钮,再做的改动就不影响前面的了。
简言之,分节符使得它们独立了。
这个工具栏上的“同前”按钮就显示在工具栏上,不过是图标的形式,把光标移到上面就显示出”同前“两个字来了 3.问:如何合并两个WORD文档,不同的页眉需要先写两个文件,然后合并,如何做?答:页眉设置中,选择奇偶页不同/与前不同等选项 4.问:WORD编辑页眉设置,如何实现奇偶页不同? 比如:单页浙江大学学位论文,这一个容易设;双页:(每章标题),这一个有什么技巧啊 ?答:插入节分隔符,与前节设置相同去掉,再设置奇偶页不同 5.问:怎样使WORD文档只有第一页没有页眉,页脚?答:页面设置-页眉和页脚,选首页不同,然后选中首页页眉中的小箭头,格式-边框和底纹,选择无,这个只要在“视图”——“页眉页脚”,其中的页面设置里,不要整个文档,就可以看到一个“同前”的标志,不选,前后的设置情况就不同了。
6.问:如何从第三页起设置页眉?答:在第二页末插入分节符,在第三页的页眉格式中去掉同前节,如果第一、二页还有页眉,把它设置成正文就可以了 ●在新建文档中,菜单—视图—页脚—插入页码—页码格式—起始页码为0,确定; ●菜单—文件—页面设置—版式—首页不同,确定; ●将光标放到第一页末,菜单—文件—页面设置—版式—首页不同—应用于插入点之后,确定。
第2步与第三步差别在于第2步应用于整篇文档,第3步应用于插入点之后。
这样,做两次首页不同以后,页码从第三页开始从1编号,完成。
7.问:WORD页眉自动出现一根直线,请问怎么处理?答:格式从“页眉”改为“清除格式”,就在“格式”快捷工具栏最左边;选中页眉文字和箭头,格式-边框和底纹-设置选无 8.问:页眉一般是---------,上面写上题目或者其它,想做的是把这根线变为双线,WORD中修改页眉的那根线怎么改成双线的?答:按以下步骤操作去做: ●选中页眉的文字,包括最后面的箭头 ●格式-边框和底纹 ●选线性为双线的 ●在预览里,点击左下小方块,预览的图形会出现双线 ●确定▲上面和下面自己可以设置,点击在预览周围的四个小方块,页眉线就可以在不同的位置 9.问:Word中的脚注如何删除?把正文相应的符号删除,内容可以删除,但最后那个格式还在,应该怎么办?答:步骤如下:1、切换到普通视图,菜单中“视图”——“脚注”,这时最下方出现了尾注的编辑栏。
2、在尾注的下拉菜单中选择“尾注分隔符”,这时那条短横线出现了,选中它,删除。
3、再在下拉菜单中选择“尾注延续分隔符”,这是那条长横线出现了,选中它,删除。
4、切换回到页面视图,尾注和脚注应该都是一样的 10.问:Word 里面有没有自动断词得功能?常常有得单词太长了,如果能设置一下自动断词就好了答:在工具—语言—断字—自动断字,勾上,word还是很强大的 11.问:如何将word文档里的繁体字改为简化字?答:工具—语言—中文简繁转换 12.问:怎样微调WORD表格线?WORD表格上下竖线不能对齐,用鼠标拖动其中一条线,可是一拖就跑老远,想微调表格竖线让上下对齐,请问该怎么办?答:选定上下两个单元格,然后指定其宽度就可以对齐了,再怎么拉都行press "Alt",打开绘图,其中有个调整坐标线,单击,将其中水平间距与垂直间距都调到最小值即可。
打开绘图,然后在左下脚的绘图网格里设置,把水平和垂直间距设置得最小。
13.问:怎样微调word表格线?我的word表格上下竖线不能对齐,用鼠标拖动其中一条线,可是一拖就跑老远,我想微调表格竖线让上下对齐,请问该怎么办? 答:可以如下操作:●按住ctl键还是shift,你have a try ●double click the line, try it ●打开绘图,设置一下网格(在左下角)。
使水平和垂直都为最小,试一把! ●press "Alt" 14.问:怎么把word文档里已经有的分页符去掉?答:先在工具——> 选项——> 视图——> 格式标记,选中全部,然后就能够看到分页符,delete就ok了。
15.问:Word中下标的大小可以改的吗?答:格式—字体 16.问:Word里怎么自动生成目录啊?答:用“格式>>样式和格式”编辑文章中的小标题,然后插入->索引和目录 17.问:Word的文档结构图能否整个复制? 论文要写目录了,不想再照着文档结构图输入一遍,有办法复制粘贴过来吗?答:可以自动生成的,插入索引目录。
18.问:做目录的时候有什么办法时右边的页码对齐?比如: 1.1 标题...............................1 1.2 标题...............................2答:画表格,然后把页码都放到一个格子里靠右或居中,然后让表格的线条消隐就可以了,打印出来就很整齐。
19.问:怎样在word中将所有大写字母转为小写?比如一句全大写的转为全小写的答:格式->更改大小写->小写 20.问:在存...
“Freemarker中”判断是什么意思?
3。
简介 FreeMarker允许Java servlet保持图形设计同应用程序逻辑的分离,这是通过在模板中密封HTML完成的。
模板用servlet提供的数据动态地生成 HTML。
模板语言是强大的直观的,编译器速度快。
另外新增对 JSON 字符串进行处理的方法json_string.还有其他方面的小改动、XML文档、RTF。
它不仅可以用作表现层的实现技术,输出接近静态HTML页面的速度、数据库等等。
输出转换块:在嵌套模板片段生成输出时、循环结构。
在模板中创建和改变变量、SQL查询结果集等等),转换HTML转义、压缩。
非US字符集可以用作标识(如变量名)、XML。
特性 通用 能够生成各种文本:HTML.17 发布。
2009年12月10日,模板引擎FreeMarker 2。
多种不同语言的相同模板。
强大的XML处理能力 和指令(2?? 判断A是不是存在,A==0 判断 A是否等于0,因为它并不知道HTTP或Servlet,告诉模板开发者使用,FreeMarker 2.3.19 发布,该版本修复了两个重要的安全 bug,详情请看这里。
Freemaker FreeMarker是一个用Java语言编写的模板引擎,它基于模板来生成文本输出。
方法,使其不受技术细节的打扰。
为Web准备 在模板语言中内建处理典型Web相关任务(如HTML转义)的结构。
能够集成到Model2 Web应用框架中作为JSP的替代。
支持JSP标记库。
为MVC模式设计:分离可视化设计和应用程序逻辑。
易于嵌入到产品中。
2011年05月17日,FreeMarker 2.3版本)用于递归遍历XML树。
在模板中清楚和直觉的访问XML对象模型。
2012年2月29日,FreeMarker更适合作为Model2框架(如Struts)的视图组件,但通常由Java程序准备要显示的数据,由FreeMarker生成页面,通过模板显示准备的数据。
FreeMarker与容器无关;FreeMarker同样可以应用于非Web应用程序环境.0 RC1 版第一次公开发行。
2002-10-17 2.1版本发布发,该版本主要修复了安全的bug,也包含一些很小的新特性。
2011年05月22日。
FreeMarker与Web容器无关,即在Web运行时、语法高亮等等;可以定义自己的转换。
通用数据模型 FreeMarker不是直接反射到Java对象,Java对象通过插件式对象封装,以变量方式在模板中显示。
可以使用抽象(接口)方式表示对象(JavaBean。
日期和时间格式本地化敏感,如本地文件;不需要Servlet环境。
插件式模板载入器:可以从任何源载入模板,FreeMarker 2.3.18 发布, 修复JSP 标签库相关的bug。
虽然FreeMarker具有一些编程的能力;分离页面设计员和程序员.3:轻量级。
几乎在任何地方都可以使用复杂表达式来指定值。
命名的宏,可以具有位置参数和嵌套内容。
名字空间有助于建立和维护可重用的宏库,或者将一个大工程分成模块,它并不知道Servlet或HTTP。
强大的模板语言 所有常用的指令:include、if/elseif/else。
版本发布 2002年03月18日。
FreeMarker 2、Java源代码等等.16 发布,而且还可以用于生成XML,JSP或Java 等 这句话意思是: A。
可以按所需生成文本:保存到本地文件;作为Email发送;从Web应用程序发送它返回给Web浏览器,可以在模板中使用JSP标记库,FreeMarker是免费的。
[4] 智能的国际化和本地化 字符集智能化(内部使用UNICODE)。
数字格式本地化敏感,而不必担心名字冲突
转载请注明出处51数据库 » freemarker 根据模板生成不同的
你是我的21646098