在休眠状态下,我想用“半”更新现有实体,该实体是通过PATCH
从rest api调用传递来的。
因此,在这里,HalfEntity
将是一个基于允许其余api用户发送的内容的getter和setter的pojo,这将是Entity
的子集。
是否有最快的方法在实体的“一半”中为实体分配新值?
所以反对写这样的负载...
Entity.setValue(HalfEntity.getValue());
Entity.setValue2(HalfEntity.getValue2());
Entity.setValue3(HalfEntity.getValue3());
Entity.setValue5(HalfEntity.getValue5());
...我想这样写:
Entity.patch(HalfEntity);
那可能吗?
最佳答案
您可以执行以下操作:
public void patch(Object halfEntity) throws IllegalArgumentException, IllegalAccessException{
for(Field f:halfEntity.getClass().getDeclaredFields()){
f.setAccessible(true);
f.set(this, f.get(halfEntity));
}
}