java后台如何取得Object对象中某列的值?

是林啊 2019-12-20 06:49:33
如图所示,我从前端传回来一个值:


这个值的内容是:[object Object],[object Object] (这是java控制台输出的结果)


JSONObject.parseObject
我想取到每个object中的值我该怎么取?

比如objce 1的id 和object 2 的id这种。

我是真的弟弟,求助各位大佬
...全文
4729 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
是林啊 2019-12-23
  • 打赏
  • 举报
回复
好了已经解决了:


System.out.println(repayDebtDto.getAccountsPayable());
            JSONArray jsonArray1 = JSONArray.fromObject(repayDebtDto.getAccountsPayable());
            String b = null;
            for (int i = 0; i < jsonArray1.size(); i++) {

            	JSONObject jsonObj = jsonArray1.getJSONObject(i);
            	String planAmount = jsonObj.getString("planAmount");
            	String planProject = jsonObj.getString("planProject");
            }
先在前台使用JSON.stringify方法转换,然后调用import net.sf.json.JSONArray; import net.sf.json.JSONObject; 这俩包的JSONArray.fromObject和getJSONObjec方法就好了,感谢各位大佬的解答
dkwuxiang 2019-12-23
  • 打赏
  • 举报
回复
接收到的字符串时json的数组形式,应该JSONObject.parseArray(arg0)吧?
是林啊 2019-12-23
  • 打赏
  • 举报
回复
引用 7 楼 nayi_224 的回复:

const objToStr = JSON.stringify(getRepaymentData());
        alert(objToStr);
        $("#accountsPayable").val(objToStr);
        alert($("#accountsPayable").val());
大佬,请问我现在还需要把这个转成json格式吗,还是说我已经能直接取值了?
是林啊 2019-12-23
  • 打赏
  • 举报
回复
我后台接收到的值:[{"id":"","planProject":"其他手续费","planAmount":"11"},{"id":"","planProject":"担保费","planAmount":"11"}]
是林啊 2019-12-23
  • 打赏
  • 举报
回复
前台做了JSON.stringify还是不行,因为我传回去的字段好像是string类型的,我把值JSON.stringify后,存到了一个string类型字段中,更改了他的val(),通过实体对象传到后台。所以我后台其实接受到的是个string类型的值?使用json转换就报错了?
nayi_224 2019-12-23
  • 打赏
  • 举报
回复

const objToStr = JSON.stringify(getRepaymentData());
        alert(objToStr);
        $("#accountsPayable").val(objToStr);
        alert($("#accountsPayable").val());
是林啊 2019-12-23
  • 打赏
  • 举报
回复
引用 5 楼 是林啊 的回复:
[quote=引用 4 楼 nayi_224 的回复:] 你在java中获得的真的只是 [object Object],[object Object] 这个字符串。 你要做的是在前台加上 JSON.stringify
我在前台是加上了大佬你说的的

const objToStr = JSON.stringify(getRepaymentData());
		alert(objToStr);
		$("#accountsPayable").val(getRepaymentData());
		alert($("#accountsPayable").val(getRepaymentData()));

alert也能弹出具体的数据,但是传到后台我调用JSON.parse,JSONObject.parseObject方法都会报错来着[/quote] 不对,好像我只是测试了并没有把值写进去,我再去试试
是林啊 2019-12-23
  • 打赏
  • 举报
回复
引用 4 楼 nayi_224 的回复:
你在java中获得的真的只是 [object Object],[object Object] 这个字符串。 你要做的是在前台加上 JSON.stringify
我在前台是加上了大佬你说的的

const objToStr = JSON.stringify(getRepaymentData());
		alert(objToStr);
		$("#accountsPayable").val(getRepaymentData());
		alert($("#accountsPayable").val(getRepaymentData()));

alert也能弹出具体的数据,但是传到后台我调用JSON.parse,JSONObject.parseObject方法都会报错来着
nayi_224 2019-12-23
  • 打赏
  • 举报
回复
你在java中获得的真的只是 [object Object],[object Object] 这个字符串。 你要做的是在前台加上 JSON.stringify
是林啊 2019-12-23
  • 打赏
  • 举报
回复
引用 2 楼 Mister_X 的回复:
转换为你对应的实体类,然后再获取你想要的数据
我没有建对应的实体类,不用实体类可以转吗,我只想取数据出来判断一下就好了
Mister_X 2019-12-21
  • 打赏
  • 举报
回复
转换为你对应的实体类,然后再获取你想要的数据
是林啊 2019-12-20
  • 打赏
  • 举报
回复
System.out.println(repayDebtDto.getAccountsPayable());
            JSONObject jsonObject = JSONObject.parseObject(repayDebtDto.getAccountsPayable());
    		// 获取到key为shoppingCartItemList的值
            for(int i = 0;i<=jsonObject.size();i++){
            	String r = jsonObject.getString("planProject");
        		System.out.println(r);
            }
这是测试写的,但是parseObject这个方法好像会抛异常,报错了。。

81,091

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧