这里报的错很明显、就是map类型的数据不能转化为一个对象。我要实现的效果、前端我自定义一些参数传输到后端。这些参数就包括了对象类型的数据。然后通过get、set的方式操作对象属性。后端在接收这些数据的时候要进行一些转换

1、前端传参的形式

const params = {
userId: localStorage.getItem("uid"),
level: localStorage.getItem("level"),
goodsInfo: this.goodsInfo
};

成功解决:java.util.LinkedHashMap cannot be cast to com.zyz.bookshopmanage.pojo.GoodsInfo_对象类型

2、后端获取

2.1 不能正常转换的情况代码

GoodsInfo goodsInfo2 = (GoodsInfo) maps.get("goodsInfo");

2.2 可以正常转换为对象的代码

  • 1、转化成json字符串
  • 2、将json转换为对象
String goodsInfo = JSON.toJSONString(maps.get("goodsInfo"));
GoodsInfo goodsInfo1 = JSONObject.parseObject(goodsInfo,GoodsInfo.class);

3、改进方法

在pom文件中引入对应的转换包、然后代码就如2.2正常写就可以

<!--使用fast-json对其进行转换-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.61</version>
</dependency>

4、成功转化为对象

成功解决:java.util.LinkedHashMap cannot be cast to com.zyz.bookshopmanage.pojo.GoodsInfo_对象类型_02

5、后语

学无止境。。。。。。