Struts Freemarker一对超强组合(2)
2008-02-23 10:08:39来源:互联网 阅读 ()
由于灵活使用了freemarker以后,我都不用在项目中引入Struts的tlds了,可以节约一点服务器资源。
另外以前如果修改了JSP文件后第一次运行时,由于需要重新编译为class,所以会出现很明显的延迟。但是修改fm的ftl模板文件,刷新页面几乎感觉不到延迟,因为ftl模板无需编译。
也许各位会想了,这样组合的效率会高么?但是你从另外一个角度看,ASP本身的效率也不高,但是还能活跃在广大的服务器端,何况Java呢。
在我前面一章中说过的,如果你原来用struts编写的action,那么可以直接用ftl模板替换jsp文件。完全体现mVC的控制层与展示层分离。而且如果做的好的ftl模板,将来也可以在很多地方通用。
到底可以用在哪些地方?在fm的网站,提供一个网友开发的模板,可以让用户轻松将文档转换为RTF格式。比如在一个通用模板rtf.ftl里有下面这些macro:
<#macro big>
{\fs#{RTF_BigFontSize*2} <#nested>}<#t>
</#macro>
<#macro H1>
{\fs#{RTF_H1FontSize*2} <#nested>}<@newline/><#t>
</#macro>
当然还有定义整个rtf文件结构的地方.xiaozhen.
<#assign RTF_DefaultFontSize=10>
<#assign RTF_BigFontSize=12>
<#assign RTF_SmallFontSize=8>
<#assign RTF_H1FontSize=18>
<#assign RTF_H2FontSize=14>
<#assign RTF_InTable=false>
<#assign RTF_TableColumns=1>
<#macro document>
{\rtf1\ansi\ansicpg1252\deff0\deflang1033<#t>
{\fonttbl<#t>
<#-- feel free to change these fonts (except for f100)... just make sure you keep the same charset if you want RtfStringModel to keep working! -->
{\f0\fswiss\fcharset0 Arial;}<#t>
{\f1\fswiss\fcharset238\fprq2 Arial CE;}<#t>
{\f2\fswiss\fcharset204\fprq2 Arial Cyr;}<#t>
{\f3\fswiss\fcharset161\fprq2 Arial Greek;}<#t>
{\f4\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}<#t>
{\f5\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}<#t>
{\f6\fswiss\fcharset186\fprq2 Arial Baltic;}<#t>
{\f100\fnil\fcharset2 Symbol;}<#t>
}<#t>
\viewkind4\uc1\pard\f0\fs#{RTF_DefaultFontSize*2}<#t>
<#nested><#t>
}<#t>
</#macro>
注:这里<#t>是换行符
然后在应用模板里调用
<#import "rtf.ftl" as rtf>
<@rtf.document>
<@rtf.H1>My big header</@rtf.H1><#t>
<@rtf.big>big</@rtf.big><#t>
<@rtf.big>${otherText}</@rtf.big><#t>
</@rtf.document>
是不是很方便?你可以到这里去下载:http://www.freemarker.org/libraries.html。
上一篇: MVC设计模式带来更好的软件结构和代码重用
下一篇: Sun公司提交新规范JSR-270(J2SE 6.0)
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:网络上MD5的java实现.
下一篇:Jie Server开发指南
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash