写个宏
setCase.ftl:
<#assign FORM_TEXT = "单行文本"/>
<#assign FORM_MULTI_TEXT = "多行文本"/>
<#assign FORM_DATE_TEXT = "日期"/>
<#assign FORM_CURRENCY_TEXT = "货币"/>
<#assign FORM_NUMBER = "数值"/>
<#assign FORM_FLOAT_TEXT = "浮点数值"/>
<#assign FORM_INTEGER_TEXT = "整型数值"/>
<#assign FORM_CHOICE = "选择"/>
<#assign FORM_SELECT = "下拉列表"/>
<#assign FORM_CHECKBOX = "多选"/>
<#assign FORM_RADIO = "单选"/>
<#assign FORM_UNNKOWN_TEXT = "未知"/>
<#assign URI_FORM_TEXT_U = "customerform2/updateTextColumnInit"/>
<#assign URI_FORM_MULTI_TEXT_U = "customerform/updateTextFieldColumnInit"/>
<#assign URI_FORM_DATE_TEXT_U = "customerform/updateDateColumnInit"/>
<#assign URI_FORM_NUMBER_U = "customerform/updateNumberColumnInit"/>
<#assign URI_FORM_CURRENCY_TEXT_U = "customerform/updateCurrencyColumnInit"/>
<#assign URI_FORM_CHOICE_U = "customerform2/updateChoiceColumnInit"/>
<#assign URI_FORM_TEXT_D = "customerform2/deleteTextColumn"/>
<#assign URI_FORM_MULTI_TEXT_D = "customerform/deleteTextFieldColumn"/>
<#assign URI_FORM_DATE_TEXT_D = "customerform/deleteDateColumn"/>
<#assign URI_FORM_NUMBER_D = "customerform/deleteNumberColumn"/>
<#assign URI_FORM_CURRENCY_TEXT_D = "customerform/deleteCurrencyColumn"/>
<#assign URI_FORM_CHOICE_D = "customerform2/deleteChoiceColumn"/>
<#macro typeCase type>
<#if type==formConstants.FORM_TEXT>
${FORM_TEXT}
<#elseif type==formConstants.FORM_MULTI_TEXT>
${FORM_MULTI_TEXT}
<#elseif type==formConstants.FORM_DATE_TEXT>
${FORM_DATE_TEXT}
<#elseif type==formConstants.FORM_CURRENCY_TEXT>
${FORM_CURRENCY_TEXT}
<#elseif type==formConstants.FORM_NUMBER>
${FORM_NUMBER}
<#elseif type==formConstants.FORM_FLOAT_TEXT>
${FORM_FLOAT_TEXT}
<#elseif type==formConstants.FORM_INTEGER_TEXT>
${FORM_INTEGER_TEXT}
<#elseif type==formConstants.FORM_CHOICE>
${FORM_CHOICE}
<#elseif type==formConstants.FORM_CHECKBOX>
${FORM_CHECKBOX}
<#elseif type==formConstants.FORM_SELECT>
${FORM_SELECT}
<#elseif type==formConstants.FORM_RADIO>
${FORM_RADIO}
<#else>
${FORM_UNNKOWN_TEXT}
</#if>
</#macro>
<#macro typeURICase type>
<#if type==(formConstants.FORM_TEXT+"U")>
${URI_FORM_TEXT_U}
<#elseif type==(formConstants.FORM_MULTI_TEXT+"U")>
${URI_FORM_MULTI_TEXT_U}
<#elseif type==(formConstants.FORM_DATE_TEXT+"U")>
${URI_FORM_DATE_TEXT_U}
<#elseif type==(formConstants.FORM_CURRENCY_TEXT+"U")>
${URI_FORM_CURRENCY_TEXT_U}
<#elseif type==(formConstants.FORM_NUMBER+"U") || type==(formConstants.FORM_FLOAT_TEXT+"U") || type==(formConstants.FORM_INTEGER_TEXT+"U")>
${URI_FORM_NUMBER_U}
<#elseif type==(formConstants.FORM_CHOICE+"U") || type==(formConstants.FORM_CHECKBOX+"U") || type==(formConstants.FORM_SELECT+"U") || type==(formConstants.FORM_RADIO+"U")>
${URI_FORM_CHOICE_U}
<#elseif type==(formConstants.FORM_TEXT+"D")>
${URI_FORM_TEXT_D}
<#elseif type==(formConstants.FORM_MULTI_TEXT+"D")>
${URI_FORM_MULTI_TEXT_D}
<#elseif type==(formConstants.FORM_DATE_TEXT+"D")>
${URI_FORM_DATE_TEXT_D}
<#elseif type==(formConstants.FORM_CURRENCY_TEXT+"D")>
${URI_FORM_CURRENCY_TEXT_D}
<#elseif type==(formConstants.FORM_NUMBER+"D") || type==(formConstants.FORM_FLOAT_TEXT+"D") || type==(formConstants.FORM_INTEGER_TEXT+"D")>
${URI_FORM_NUMBER_D}
<#elseif type==(formConstants.FORM_CHOICE+"D") || type==(formConstants.FORM_CHECKBOX+"D") || type==(formConstants.FORM_SELECT+"D") || type==(formConstants.FORM_RADIO+"D")>
${URI_FORM_CHOICE_D}
<#else>
</#if>
</#macro>
在模板页面中使用:
<#include "/macros/setCase.ftl"/>
<@typeURICase type=("type参数"+'U')/>
<@typeCase type="type参数"/>
分享到:
相关推荐
在struts2中使用freemarker模版.doc
自己写的一个框架例子,公司也在用,框架是struts2+hibernate+freemarker
1.FreeMarker 2.3.16pdf手册 2.struts2+freemarker web项目例子,可以运行
众所周知,struts2宣称freemarker模板中不再支持自定义标签,但如果工程UI仅用freemarker模板可以通过扩展struts标签简单实现,不是采用官方不推荐的配置JspSupportServlet实现的!内付详细说明及范例,此方法仅为团队...
Struts2框架技术对Freemarker做了很好的支持,开发人员只要熟悉Struts2的标签即可进行开发Freemarker模板文件,如果您还不熟悉具体的Struts2及标签应用请参考其他文献资料,本文主要阐述Struts2与Freemarker的配置...
FreeMarker与Struts2结合的部署
NULL 博文链接:https://cdxs2.iteye.com/blog/1923067
基于Struts2和freemarker整合的小程序,能够自动生成html页面,能够运行
struts2+freemarker
struts2sitemesh-freemarker 源码
这是一个struts2 freemarker 国际化的小例子
Struts2与FreeMarker模板
使用struts2的freemarker模板扩展struts标签
Struts2 和freemarker实例 简单STRUTS2的使用,和freeMarker的使用
Struts2集成FreeMarker和Velocity,写成了工具类,快速实现页面静态化,以后直接调用即可,无需修改任何源代码,改压缩文件包括 1、工具类; 2、源码(含jar包); 3、mysql数据库可执行文件; 4、struts2集成...
简单的新闻发布系统 用到了SSH2框架 页面是用freemarker生成的静态页面 用户名Admin 密码123456
struts2 的方式自己去看简单。 spring2.5 是用注释来注入 hibernate3.2 是用ejb3注解映射关系 hibernate3 +个属性可以自动生成表结构 freemarker 用摸版来表现视图,这个例子就是简单的用法没进行进一不的架设
freemarker与struts2详细配置.
采用Struts2注解,视图层采用FreeMarker的一个示例项目。 欢迎下载学习。
sturts2与freemarker结合使用,以及freemarker语法