最近写一个小查询,然后出了个很奇怪的bug,一直说LinkedHashMap无法被转换为要查询的实体对象,关键是我这里无论是前端还是后端都没有用到LinkedHashMap的类型,然后查了半天百度,说是传入的查询条件应该解析一下。
解决方法:
首先 导入 net.sf.json 类
<dependency>
<groupId>net.sf.json-lib</groupId>
<artifactId>json-lib</artifactId>
<version>2.3</version>
<classifier>jdk15</classifier>
</dependency>
然后 使用JSONObject中的方法, 先将数据转成json字符串, 在转成实体对象即可。
主要就是两步
JSONObject jsonObject=JSONObject.fromObject(objectStr); // 将数据转成json字符串
Person per = (Person)JSONObject.toBean(jsonObject, Person.class); //将json转成需要的对象