表数据更新语句类似:update 表名 set field1= value1,field2=value2 where 条件字段1=value3 and 条件字段2= value4;
在dao层,value1~value4一般是从一个vo值对象的属性中取值(不纠结于vo、po、bo、dto这些概念和区别,这里把dao层中的pojo也称为vo),这种方式存在的一个问题是:在这个vo对象中,不容易分辨出哪些属性用于set新值,哪些属性用于where条件中。
UpdateVoTemplate类
为了解决该问题,写了个vo类UpdateVoTemplate,该类具有两个属性vo对象:newValue属性对象用于update语句set,whereValue属性用于where条件。这个类是generic类,实际使用时要传两个具体的vo类进行实例化。
/**
*用于update sql语句的模板vo
* @author wanggb
*
* @param <UpdateValueVo> update set值vo
* @param