easyUI获取数据网格的内容后传到后台

在前台使用输入的数据生成了一个数据网格,使用$(selector).datagrid("getRows")获得当前页的所有数据,使用ajax传到后台,这个数据怎样封装为某个实体类的对象,后台应该怎么接收这个数据,后台使用的是springmvc接受请求

9个回答

将getRows获取到的对象用JSON.stringify方法转换为JSON字符串,传到后台用@RequestBody接收,再用JSONObject.fromObject手动转换为JSON对象,最后用JSONObject.toBean方法住哪换位java实体类对象

说两种方式吧,先说好理解的。
第一种在js中把表格内的数据获取的rows直接转换为json字符串。用字符串传过去。controll用String 接收,然后用jsonarray强制转成你要的对象。

第二种,直接把rows对象传过去。后台用list接收,
这样描述,前台有一个data.rows=grid.getrows,后台有一个objet里面有一个list<你要对应的对象> rows,生成get set方法。 而controll 里面直接写这个
对象名子,他会直接自动装配。

qq_40962933
qq_40962933 我用的是第一种方法,然后通过一个数组,获取到数据网格中的数据,只获取到前面两个列下的字段,后面的就报关键字不在字典中,难道是我拼错了?
6 个月之前 回复
d1046987169
FelixGeoff 代码贴在楼下了,麻烦给看看
2 年多之前 回复
d1046987169
FelixGeoff 恩,就是想用第二种方法在让它自动装配的,在生成数据网格rows的时候field的名字就是对应的实体类的属性名,但是不能用对象名.属性名的写法,方法的参数列表里面直接写需要的对象的的集合就可以了吗,试过了好像不行啊,接收不到
2 年多之前 回复

接收对象的方法多了!
直接当参数接收,
json格式传过来!你封装好的方法,或者自己转换成实体类

qq_34730277
南宫文凯 你的路径就可以到Controller层
2 年多之前 回复

这是具体的代码,大家看看
图片说明
js代码
图片说明
controller代码

图片说明
添加datagrid的代码

我就是这么做的啊。。写法上应该是没有问题的。。。。。。。。。。或者你把billdetaillist这个名子改成row试试。。不是过着应该不影响。。。。。。。

d1046987169
FelixGeoff 额 确实是不行 会报错400 bad request
2 年多之前 回复

图片说明 这个是controller接收的对象。。
图片说明这个是我这个对象的封装。当然我前台那个data更复杂。是对象内有
各种对象和各种数组的。。。。

图片说明
图片说明
看这个吧。。这个和你要的需求是完全一样的。

图片说明

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!