我controller的方法参数该怎么写,map或者实体javabean都可以,我是对skus哪里有迷惑,想转成Listz这样,但是老报错
POST请求
可以有两种方式:
1、把skus当成一个字符串接收,接收到用JSONObject等去转换解析下就可以了,可以参考下面:
String content = FileUtils.readFileToString(file);
//对基本类型的解析
JSONObject obj = new JSONObject(content);
System.out.println("name:" + obj.getString("name"));
System.out.println("sex:" + obj.getString("sex"));
System.out.println("age" + obj.getInt("age"));
System.out.println("is_student" + obj.getBoolean("is_student"));
//对数组的解析
JSONArray hobbies = obj.getJSONArray("hobbies");
System.out.println("hobbies:");
for (int i = 0; i < hobbies.length(); i++) {
String s = (String) hobbies.get(i);
System.out.println(s);
}
2、如果你这个对应的数据结构重用比较多,可以写成javabean,具体可以参考这个试试:封装实体类,再封装一个实现序列化的实体的集合,用这个集合接收 https://blog.csdn.net/u011781521/article/details/77586688
我好久没碰java了,但是我想你可以试试传递的时候转成string,用controller的方法参数是string类型,接下来转成json数据类型就可以方便读取数据了,list的话就需要你新建自定义类,类里面放一个list>这样存储数据
从request中提取
request.getParameter("username");
使用string传递,在controller中使用string接收,然后再将字符串转为json
@RequestBody 用这个注解, 将参数的json 对象,映射到一个java 对象里面
@RequestParam(value="order_id") String order_id, @RequestParam(value="type") int type, @RequestParam(value="skus") String skus,其中skus需要用JSONObject jsonPara = JSONObject.parseObject(skus);操作
https://www.cnblogs.com/ysocean/p/7425861.html