gpt4 book ai didi

java - 如何使用 Modelmapper 从另一个对象更新对象字段

转载 作者:行者123 更新时间:2023-12-02 03:01:55 25 4
gpt4 key购买 nike

我计划编写一个方法,用于更新另一个 MyObject 对象的非空字段的 MyObject 对象。

private void updateMyObject(MyObject sourceObject, MyObject destinationObject) {
ModelMapper mapper = new ModelMapper();
mapper.getConfiguration().setPropertyCondition(Conditions.isNotNull());
mapper.map(sourceObject, destinationObject);
}

public class MyObject {
long id;

long durationInMilliSecounds;

//...getters and setters
}

这里destinationObject没有得到更新。任何人都可以建议这段代码的问题吗?

最佳答案

您似乎缺少一些代码。也许错误就在该代码中。我猜测您的模型没有同时具有 ModelMapper 所需的 getter 和 setter。

以下代码按预期工作:

public class modelMapperTest {
public static void main(String[] args) {
ModelMapper mapper = new ModelMapper();
mapper.getConfiguration().setPropertyCondition(Conditions.isNotNull());

MyModel sor = new MyModel(null, 5);
MyModel des = new MyModel("yyy", 0);

System.out.println(des);
mapper.map(sor, des);
System.out.println(des);
}

public class MyModel {
private String s;
private int i;

public String getS() {
return s;
}

public void setS(String s) {
this.s = s;
}

public int getI() {
return i;
}

public void setI(int i) {
this.i = i;
}

public MyModel(String s, int i) {
super();
this.s = s;
this.i = i;
}

@Override
public String toString() {
return "MyModel [s=" + s + ", i=" + i + "]";
}

}

打印:

我的模型 [s=yyy,i=0]

我的模型 [s=yyy,i=5]

关于java - 如何使用 Modelmapper 从另一个对象更新对象字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49153100/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com