前端向后端传入json 后台怎么接收(params呢) |
您所在的位置:网站首页 › java接收前端数据 › 前端向后端传入json 后台怎么接收(params呢) |
目录 一、使用POJO若前端传递过来的数据刚好和我们的bean实体对象属性一致,则可以使用对象的形式接收。后端实体类 二、使用Map接收后台Controller 三、使用@RequestParams 1,params传参 2.地址拼接传参 当前端传来json数据时,后端有多种方式接收 前端json数据: $.ajax({ type:"POST", url:"", data:{ id:121, //数字 name:"wb", //字符串 }, error=>{ }, success=>{ } }) 一、使用POJO 若前端传递过来的数据刚好和我们的bean实体对象属性一致,则可以使用对象的形式接收。 后端实体类 @Component public class user{ private int id; private String name; }后端Controller @PostMapping("/student/user") public void getUser(@RequestBody User user){ System.out.println(user); }前端数据和bean对象属性要一致 必须使用@RequestBody注解 当前台传入数据除了实体类属性外还有其他数据 1.当通过params传入,则使用@RequestParams接收 2.当传入方式跟其他参数一样都是data传入则还是@RequestBody 又因为@RequestBody只能使用一次,所以此时使用实体类User获取不到所有属性,此时我们需要创建一个UserDTO继承User,且给他加入其他传入参数属性 public class UserDTO extends User{ private String age; } 此时后台接收时如下 @PostMapping("/student/user") public void getUser(@RequestBody UserDTO userDTO){ //获取user对象 通过多态 User u=userDTO; //获取除此之外的其他属性 String age=userDTO.getAge(); } 二、使用Map接收 后台Controller@PostMapping("/lhj/getdata") public void getData(@RequestBody Mapmap){ System.out.println(map); } 前端传来的是一个json对象时:{'id'=1,'name'='ww'},可以用Map来获取 @RequestMapping(value = "/update") @ResponseBody public String updateAttr(@RequestBody Map map) { if(map.containsKey("id"){ Integer id = Integer.parseInt(map.get("id")); } if(map.containsKey("name"){ String objname = map.get("name").toString(); } return "success"; 对于Map,值的类型建议设置为Object,这样可以使Map能接收各种类型的数据,如字符串、数字、数组和对象等。 三、使用@RequestParams 1,params传参 $.ajax({ url: "/search", method: "GET", params: "keyword=1", success: function(response) { } });若前端请求时通过params传参数,则后端需要使用@RequestParams来与传入参数名相对应, @PostMapping("/search") public void getUser(@RequestParams("keyword") String keyword){ } 2.地址拼接传参 $.ajax({ url: "/search?name=hehe", method: "GET", params: "keyword=1", success: function(response) { } });后端获取参数 @PostMapping("/search") public void getUser( @RequestParams("keyword") String keyword, @RequestParams("name") String name){ } 以上就是常见的前后端获取参数方式了~~~ |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |