我有一個正常的POJO類似如下:Intellij IDEA從另一個對象實例生成更新方法。 (更新RealmObject)
public class Car extends RealmObject{
private String name;
private int maxSpeed;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getMaxSpeed() {
return maxSpeed;
}
public void setMaxSpeed(int maxSpeed) {
this.maxSpeed = maxSpeed;
}
}
有沒有一種方法來生成接收汽車的另一個實例的更新/複製方法?類似這樣的:
public void update(Car other){
setName(other.getName());
setMaxSpeed(other.getMaxSpeed());
}
我從服務器接收JSON格式的汽車,並使用GSON獲取Car實例。如果我要救汽車在一個領域我必須做這樣的事情:
Car receivedCar = getCarFromServer();
Car car = realm.createObject(Car.class);
car.setName(receivedCar.getName());
car.setMaxSpeed(receivedCar.getMaxSpeed());
注意,因爲境界我不能使用拷貝構造函數。
我的真實模特擁有超過25個領域,因此這將是一個殺手級的工作。我寧願生成一個更新方法,並做這樣的事情:
Car receivedCar = getCarFromServer();
Car car = realm.createObject(Car.class);
car.update(receivedCar);
有沒有人有任何想法如何讓我的工作更容易?
你應該看看[推土機庫](http://dozer.sourceforge.net/)。它會爲你做這個。 – 2014-10-31 20:23:34
我不需要複製所有字段。其中一些不應該改變,像RealmList。我合併了基督徒在他的回答中提出的建議。不過,@EngineerDollery如果你知道一個插件來生成那段代碼,我敢打賭它對別人有用。 – 2014-10-31 21:15:14