创建JSON集合使用JSONArray.fromObject 转化后得到的jsonArray集为空?
个人经历教训,答案在末尾最
近况说明:最近在写一个论坛系统的后台,其中涉及到文章类(article)与评论类(article_comment)的关系,我在article类中创建了一个获取文章评论的function【该方法获取文章所有评论,组成JsonArray集合后再转化为String格式返回】:
public String getArticalComments() {//获取文章评论集合List<artical_comment> article_comments= new ArrayList<article_comment>(); try { ResultSet res = DoSQL.executeQuery("SELECT *FROM article_comment WHERE artical_id = " + this.article_id);//通过文章id寻找评论while (res.next()) {System.out.println("获取评论id:"+res.getInt("id"));artical_comment A = new artical_comment(res.getInt("id"));//通过文章id寻找到评论id,并创建评论类//System.out.println(A.toString());artical_comments.add(A);//将评论添加到对象数组}System.out.println(article_comments);} catch (SQLException e) {// TODO 自动生成的 catch 块System.out.println("获取res查询结果集失败");e.printStackTrace();}//创建JSON集合JSONArray jsonarray = JSONArray.fromObject(artical_comments);System.out.println("转换jsonarray后:"+jsonarray);//把JSON集合转出String字符串输出String str = jsonarray.toString();System.out.println("转换str后:"+str);return str;//str代表转化成String格式后的某文章评论集合}
起初发现控制台打印出来的str为{} 即 空,通过调试发现,JSONArray jsonarray = JSONArray.fromObject(article_comments);
这一步得到的jsonarray也为空,但是List<article_comment> article_comments= new ArrayList<article_comment>();
artical_comments这个集合的内容不为空。
这就说明,问题发生在JSONArray jsonarray = JSONArray.fromObject(article_comments);
这一行代码上面了,也就是list对象集合转json格式造成异常,一番搜索,得出结果【划重点】:
答案:
SONArray.fromObject(object)在对Object转换的时候是按照domain类中的所有getXXX()方法进行转换的。如果你在类中写了非属性的getXXX()方法,那么返回给你的就会有XXX属性了,如果在object中没有写get方法,那么转化为jsonArray的时候是获取不到值的。
创建JSON集合使用JSONArray.fromObject 转化后得到的jsonArray集为空?相关推荐
- maven工具使用json-lib时,JSONArray.fromObject()不能执行的解决方案
前端代码我就不展示了 ,下面说明下我遇到问题的情况,如果不想看可以直接划到黄色字体部分直接找解决方法哦~~(相关jar包我会放在云中,想要的自己下载哦,链接在视频最下面!!) 我的pom文件,如下,导 ...
- JSONArray.fromObject不执行且不报错问题的解决
今天在写javaweb工程的时候需要向前台传json格式的数据,用到了json-lib-2.4-jdk15.jar等一系列包,然而却出现如下状况: CityBean是一个javaBean,我们看到,控 ...
- Json格式的数据集标签转化为有效的txt格式(data_coco)
Json格式的数据集标签转化为有效的txt格式(data_coco) 学习前言 分析json格式标签 转化为有效的txt格式 实现效果 学习前言 在参加许多目标检测比赛时,为了能够获得合理的评价结果, ...
- android studio读取本地json,Android Studio读取和创建Json
1,984 JSON的基本语法 1.JSon的四个基本规则 (1)并列的数据之间用逗号(,)分隔 (2)映射用冒号(:)表示 (3)并列数据的集合(数组)用方括号([])表示 (4)映射的集合(对象) ...
- JSON的三种解析方式以及JSONObject、JSONArray区别
JSON的常用两种解析方式 一.什么是JSON? JSON是一种取代XML的数据结构,和xml相比,它更小巧但描述能力却不差,由于它的小巧所以网络传输数据将减少更多流量从而加快速度. JSON就是一串 ...
- Python3中的json对象与python对象转化
1.直接将Python对象转成json对象,使用方法dumps() import jsond = {"姓名": "curry", "age" ...
- 2021-07-27 对labelme标注出来的JSON文件进行灰度图转化(标签值0.1.2.3.4)
对labelme标注出来的JSON文件进行灰度图转化(标签值0.1.2.3.4) 原图如下: 标注后生成json文件如下: import cv2 import numpy as np import j ...
- SCCM2012R2之五创建系统集合
SCCM分发客户端或软件可以针对集合进行默认情况下拥有一个"所有系统"的集合,但在大多数情况下,我们会将不同的计算机账户予以甄别,对不同的操作系统分组,来推送不同的软件. 针对不同 ...
- 使用泛型创建只读集合
本系列文章翻译O'Reilly 出版的<C# Cookbook>一书中的片段,仅供学习交流使用 4.9 使用泛型创建只读集合 问题 您希望类中的一个集合里的信息可以被外界访问,但不希望用户 ...
- Java创建JSON对象
Java创建JSON对象 private void getJson(HttpServletRequest request, HttpServletResponse response)throws Se ...
最新文章
- SAP LSMW 因物料描述里有换行符或者引号导致数据导入失败
- SKChoosePopView 一个HUD风格的可定制化选项弹窗的快速解决方案
- zabbix db partition
- 论文浅尝 | 学习开发知识图谱中的长期关系依赖 - ICML 2019 ​
- orange's系统可以装mysql 吗?_bochs 2.4.2 ubuntu 安装运行问题《orange#39;s 一个操作系统的...
- mysql集群 hbase_hbase完整分布式集群搭建
- NLP领域首个国家杰青,回归母校!
- 【ES】学习2-搜索
- 活动目录权限委派|父域子域管理
- Orcad Capture CIS 绘制原理图库
- WPF界面工具Telerik UI for WPF入门级教程 - Xaml VS NoXaml
- java poi excel转pdf_java_poi导入导出excel.pdf
- android系统蓝牙音箱功能吗,Android蓝牙开发系列文章-其实你的手机可以变成一个蓝牙音箱...
- YAML Syntax Error Duplicated mapping key at line 62, column 24: description: 城市主键
- 利用E4A编写APP获取安卓手机加速度传感器数据
- JSON Shema 校验JSON内容
- 【重识前端】闭包与模块
- Java程序员两年校招笔记总结分析——菜鸡求职
- SQL server完整性约束的操作
- IDEA 快捷键及修改