Spring少得可怜的几个tag基本上是鸡肋

Spring少得可怜的几个tag基本上是鸡肋,完全可以不要。

1.form 的数据绑定因为它的Tag主要用来做数据绑定,把VO的值绑到input框上。但是,和Struts一样,需要逐个Input框绑定,而且语法极度冗长,遇到select框还要自己进行处理.....

jodd的form tag给我们懒人一个懒得多的方法,只要在<form>两头用<jodd:form bean="myVO"></jodd:form>包住,里面的所有input框,select框,checkBox...统统自动被绑定了,这么简单的事情,真不明白struts,spring为什么不用,为了不必要的灵活性?

不过,jodd有个致命弱点是不能绑定内嵌对象的值。比如Order(订单)对象里有个Customer(顾客)对象,jodd就不能像 struts,spring一样用如下语法绑定:

<input name="customer.customerNo">

这是因为它的beanUtils比Jakata Common弱的缘故,所以用了一个错误的思路。

于是动用beanUtils改了一下,代码在这里下载

2. DataGrid 除了detail form, View层的数据绑定还有另外两种很典型的形式,
一种是可编辑的DataGrid, 常用于基础资料的维护界面.
而另外一种DataGrid纯粹显示数据,不可以修改. 比如订单列表界面.

DisplayTag和ValueList都属于这种形式的Tag Library,萝卜青菜各有所爱,我自己喜欢ValueList多一些.
因为两者都不可能100%合适项目的要求,基本上都需要自行做很多扩展才会成为自己心爱的DataGrid.
扩展的时候,ValueList的架构要灵活轻便一些,displayTag做得太霸道了. 曾经花了不少时间看ValueList的原码,自己的DataGrid也初步成型了, 要赶快另外写一篇文档来记下ValueList的扩展要诀.

posted on 2005-01-10 23:09  笨笨  阅读(2438)  评论(0)    收藏  举报

导航