freemarker空值的多种处理方法
来源:互联网 发布:mac恢复系统 编辑:程序博客网 时间:2024/05/27 16:40
默认情况下,freemarker的变量必须有值,如果没有被赋值的变量在页面上使用就会抛出异常,出错的信息都会显示在页面上。
解决办法:
方法一
我们可以在页面上使用freemarker变量时 以 ${xxx?if_exists} 来处理空值的情况,或采用默认值的方法避免此类问题。但每个freemarker变量都这样处理确实比较让人心烦,请看以下方法。
方法二
在类路径下 加入 freemarker.properties 文件,里面配置 classic_compatible=true。
方法三
通过freemarker.template.Configuration的 config.setClassicCompatible(true);通过源码我们看到,其实方法二、方法三是思想是一致的,只是实现方法不同而已。如果应用中已经存在了 freemarker.properties 并配置了其他的属性,可以在这里配置,否则推荐使用方法三,毕竟没有每个应用的配置文件实在是都够多了。
方法四
在ftl文件内引入 <!--#setting classic_compatible=true-->。
其他关于在spring中的配置这里就省略。现在的项目中没有用到。
总结:方法四是需要在每个需要这样处理的页面都要引入的,比较麻烦,、还是选择使用 方法二、方法三好了。但是
方法二、方法三也不是万能的。例如我在action中定义一个MyBean类的对象为 myBean,MyBean中有Comp属性。在页面上就要 用如下语句使用:${myBean.comp},这里myBean可能为null,comp也可能为null。这时候 就要使用方法一了,${(myBean.comp)!} 或 ${(myBean.comp)?if_exists}。
转自http://www.po-soft.com/hi/wlo_o/blog/2055
更多内容请访问OECP社区
- freemarker空值的多种处理方法
- freemarker空值的多种处理方法
- freemarker快速上手+空值的多种处理方法
- freemarker快速上手+空值的多种处理方法
- FreeMarker空值的处理
- Freemarker 空值处理
- freemarker处理空值
- freemarker空值处理
- FreeMarker的怎么对空值的处理
- freemarker对空值的处理以及基本数据类型
- freemarker之空值处理解决方案
- freemarker处理boolean的方法
- 数据库字段空值处理的方法
- 有关排序空值的处理方法
- freemarker 变量为空处理
- freemarker对空值的判断
- freemarker的空值和默认值
- freemarker 空值判断
- OO设计原则
- 关于爱情
- 如何求最大公约数
- Maven介绍
- Microsoft Visual Studio 2008
- freemarker空值的多种处理方法
- 相对路径的使用&&调用.C中的函数
- pragma
- C++ 中define(宏定义) 各种用法(含特殊),小举个例子,谢谢!
- qt 设置窗口半透明
- Elva and so on
- 关于计算Java程序运行时间 及Java代码--JUnit
- sql如何写出excel数据透视表功能
- 免费接收邮箱短信