如下代码,将只更新 Pet 的 id 和 name 字段:
FieldFilter.create(Pet.class, "^id|name$").run(new Atom() {
public void run() {
Pet pet = dao.fetch(Pet.class, 24);
pet.setName("ABC");
pet.setNickname("XiaoBai");
dao.update(pet);
}
});
只更新除了id和name以外的正则应该怎么写?
7 回复
FieldFilter还有好几个方法,例如locked
/**
* 创建一个过滤器
*
* @param type
* POJO 类型
* @param locked
* 正则表达式,哪些字段会被忽略,语法请参看 Pattern 类的 JavaDoc
* @return 字段过滤器
*/
public static FieldFilter locked(Class<?> type, String locked) {
return create(type, null, locked, true);
}
@wendal 正则真的蛋疼得不要不要的.
@wendal 能不能加以改进,通过@ColDefine注解能控制哪些字段可更新,哪些不可更新,否则表的字段一多,控制哪些不能更新的那个字符串会特别长,而且不好维护,生怕写错了一个字段名。
添加回复
请先登陆