背景:
服务器端:获取一个事件,里面有一个类的全路径名,该类构造函数需要的三个参数,其中一个是跟类有关的个性类,比如 AClass(AVo,String,String),这个AVo根据Class的不通而不通。
获取的事件是一个json,解析之后,将Avo变为Object,通过反射构造AClass,但是在获得该对象的时候,发现AVo的类型是LinkedHashMap,不是Object,由于json解析使用的是Vert.x自带的json,不想去修改,于是只能在获取后进行强转迂回战术。
解决办法:使用ObjectMapper
伪代码如下:
ObjectMapper objectMapper = new ObjectMapper();
Object AVo = objectMapper.convertValue(LinkedHashMap对象,你需要的类型);
后来发现这个ObjectMapper是jackson包里面,之所以我都没有引用就可以使用,是因为使用的Vert.x默认的json插件,至于里面有什么坑,等用一段时间再看看吧。
上述的情况大家有什么好的解决方案,欢迎教育~
版权声明:本文为z449077880原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。