第二重罪我体会不深,不过必须用String来做Key的似乎的确很让人头痛。
第三重,我用webwork和Freemarker的整合方式,没仔细研究里面的东东。
我一直在用freemarker,特别是它的macro真是太强大了,已大大减少了我的页面开发和维护的工作量
我也是在改既有的项目的时候发现几分问题向robbin请教的。
的确,从2.1.X,WW就不建议写freemarkerServlet了,可是去掉他又是如何一个大工程!
为什么是大工程,要怪,我想肯定的怪freemarker拥有一个不可以拥有的特性,就是和session的互操作。造成我们这里很多开发人员随意把它当作jsp来用。
如果说到一个框架还需要人们去去粗取精的话,那他怎么会被广泛使用?
Freemarker 最大的好处是对 xml 的转换,比 xslt 好用多了。
个人认为FreeMarker是当前最好的用来渲染view的模板叻,希望robbin不要浅尝辄止啊,这么好的东西,轻易丢弃就太可惜叻。就好像小时候我们学骑自行车一样,你说好好的自行车四个轮子多好,为啥只有两个轮子,那么容易就摔倒呢。可是学会之后,这辈子都会骑,都觉得两个轮子的自行车的确比四个轮子的好。
一宗罪,null值处理:
这个也的确让我烦叻一阵子,不过后来不仅习惯叻,而且还真的喜欢上这一点叻。我们的页面上有null值,大概有这样两种情况:
1、这个值本来就是可有可无的。比如表单域的value=""值。这种情况,可以用${foo?default("")}来写,并不十分复杂,而且可以让你狠方便地定义默认值,比如N/A什么的。
2、Action层处理有错,导致null值。这种情况下,FreeMarker就给程序调试提供的有力的保障,也是FreeMarker对null值如此敏感的初衷。从我学FreeMarker开始,我就强烈地感受到FreeMarker在试图把自己做成模板语言中的强类型语言。
联系客服