> 文档中心 > Java种前端包括三个实体类变量,后台怎么用VO接收前端传过来的值

Java种前端包括三个实体类变量,后台怎么用VO接收前端传过来的值


在实际项目开发过程中,前后端单表交互的虽然比较多;但是像前端包括三个以上实体类的变量,后台接收前端传过来的值的时候就变得复杂一些了,今天给在这里记录一下怎么实现这种操作。主要分为两种方法:

1、第一种方法:

  • 前台传值对象封装可以参照以下代码格式;

{"对象一":{},"对象二":{},"对象三":{}}

{    "name": "BeJson",    "url": "http://www.bejson.com",    "page": 88,    "isNonProfit": true,    "address": { "street": "科技园路.", "city": "江苏苏州", "country": "中国"    },    "links": [ {     "name": "Google",     "url": "http://www.google.com" }, {     "name": "Baidu",     "url": "http://www.baidu.com" }, {     "name": "SoSo",     "url": "http://www.SoSo.com" }    ]}
  • Ajax请求保持不变
return ajax.ajax({  type: 'post',  url: jsonUrl.demo+"/add",  params: params});
  • 后台实体类需要封装成VO格式
public class Demo{    private String name;    private String url;    private String page;    private String isNonProfit;    private List
address; //封装address实体类 private List links; //封装links实体类 /** *省略set、get方法 */}
  • 控制器接收方法如下:
@ApiOperation(value = "demo", notes = "demo") @Permission("demo:add")@PostMapping(value = "/add") public ReturnEntity add(@RequestBody Demo demo) throws Exception {    ReturnBody returnBody = null;    returnBody = demoService.insert(demo);    return new ReturnEntity(returnBody)}

这样在Debug时就能在后台对应方法里面看到所有的实体类的前端输入的变量值;

2、第二种方法

  • 前端ajax请求时加上如下语句
data:JSON.stringify(data),headers:{ 'Accept':'application/json', 'Content-Type': 'application/json'}

后台直接对应三个实体类接收前端传值即可;

注意: 一定要注意前端传值对象的格式要和后台接收值时对应,不然接收不到值。


由于水平有限,本博客难免有不足,请各位大佬不吝赐教!!! 

央视天气网