问题遇到的现象和发生背景
第三方传过来的String类型message数据中,value字段既可能是单字符串形式,又可能是数组形式。
问题相关代码,请勿粘贴截图
例如"data": [
{
"ciAttrvalue": [
{
"value": "办公前置区(32个C)"
},
{
"value": "互联网WEB区(12个C)"
}
]
或"data": [
{
"ciAttrvalue": "dddddddddd"
]
运行结果及报错内容
"reason":"object mapping for [data.ciAttrvalue] tried to parse field [ciAttrvalue] as object, but found a concrete value"
我的解答思路和尝试过的方法
代码逻辑是,第三方String类型message数据→我方转JSONObject→转DTO→转DO(ciAttrvalue类型为object)→通过实体类存入elasticsearch(ciAttrvalue类型为object)
我想要达到的结果
无论第三方的ciAttrvalue字段传字符串或数组,elasticsearch都能存