可能您可以将要更新的属性作为Map<String,Object
> 其中key ==您的属性名称和value =属性的值。
这样
- 您可以通过以下方式获取多个属性
Map
- 您甚至可以在不限制用户为其他属性赋予价值的情况下更新单个属性
一旦用户提供了相同的内容,您就可以遍历地图的条目并Person
相应地更新对象。
编辑:说Person
有name
和age
属性,然后你提供方法updatePerson
一个Map
包含条目的地方[key is"name" and value as "Actual Name"], [key is"age" and value as "15"]
等
然后在您的更新方法中,您可以遍历Map
并获取要更新的属性,如下所示
public boolean updatePerson(Map<String,Object> valueMap) {
for(Entry<String, Object> enrty : valueMap.entrySet()) {
String key = enrty.getKey();
//Person p = ... logic to get person
if("name".equals(key)) {
//p.setName(enrty.getValue());
}
else
if("age".equals(key)) {
//...
}
//finally update Person into DB...
}
return true;
}