gpt4 book ai didi

java - 如何在java中将 map 转换为实体对象?

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

我有一个这样的实体对象:

class Person{
private String name;
private String class;
private String semester;
}

现在我有一张这样的 map :Map<String,String>

{
"name":"Giri"
"class":"12"
"semester":"C"
}

现在我想将此 map 转换为一个 Person 对象,其中对象中的每个字段对应于 map 中的该字段。

我该怎么做?

谢谢

最佳答案

您可以为此编写自定义映射器。

toPerson(Map<String, String> map) {
if(map == null) {
return null;
}
Person person = new Person();
person.setName = map.get("name");
person.setClass = map.get("class");
person.setSemester = map.get("semester");
return person;
}

或者你可以使用 jackson convertValue()

ObjectMapper mapper = new ObjectMapper();
mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
Person person = mapper.convertValue(map, Person.class);

除了jackson的ObjectMapper,还有DozerBeanMapper、BeanUtils,google的Gson也可以达到同样的目的。

关于java - 如何在java中将 map 转换为实体对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68049255/

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