本文介绍了如何使用MapStruct将String转换为Map?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我的Spring Boot应用程序中有 Story
实体.它具有 String
字段 storyInfo
,其中包含:
I have Story
entity in my Spring Boot application. It has String
field storyInfo
which contains:
{"title":"random title", "description":"random description"}
对于我的 Story
实体,我有 StoryDTO
和 map
字段,称为 storyInfo
.问题是:如何使用 MapStruct
?
For my Story
entity I have StoryDTO
with map
field called storyInfo
.The question is: how can I convert String
field from Strory
into Map
in StoryDTO
using MapStruct
?
推荐答案
谢谢大家的回答.通过向MapStruct的 StoryMapper
界面添加一些手动映射器,为我找到了最简单的解决方案.
Thank you guys for answers. Found the easiest solution for me by adding few manual mappers to MapStruct's StoryMapper
interface.
// Manual convert to Map
default Map toMap(String text){
Map map = new HashMap();
try {
map = new ObjectMapper().readValue(text, new TypeReference<Map<String, String>>(){});
} catch (IOException e) {
e.printStackTrace();
}
return map;
}
// Manual convery from map
default String fromMap(Map map){
return new JSONObject(map).toString();
}
这篇关于如何使用MapStruct将String转换为Map?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!