使用freemarker处理null问题时比较麻烦,如果不是调试模式,修改了模板必须要重起才生效,稍微研究了下源码,发现波波已经集成了模板属性控制的功能,只需要配置就可以.在configConstant文件里做如下配置:
public void configConstant(Constants me) {
me.setViewType(ViewType.FREE_MARKER);
me.setDevMode(true);
FreeMarkerRender.setProperty("template_update_delay", "0");//模板更更新时间,0表示每次都加载
FreeMarkerRender.setProperty("classic_compatible", "true");//如果为null则转为空值,不需要再用!处理
FreeMarkerRender.setProperty("whitespace_stripping", "true");//去除首尾多余空格
FreeMarkerRender.setProperty("date_format", "yyyy-MM-dd");
FreeMarkerRender.setProperty("time_format", "HH:mm:ss");
FreeMarkerRender.setProperty("datetime_format", "yyyy-MM-dd HH:mm:ss");
FreeMarkerRender.setProperty("default_encoding", "UTF-8");
}
这里只是为了测试,使用时最好使用重载了的方法: FreeMarkerRender.setProperties(properties)
方式指定freemarker.properties配置文件。还有很多配置项,不再赘述。
转自:http://my.oschina.net/ohaozy/blog/117945