list转换为jsonarrayy怎么转换成json

将JsonArray转化为List时JSONArray.toCollection不执行是怎么回事,跪求大侠-中国学网-中国IT综合门户网站-提供健康,养生,留学,移民,创业,汽车等信息
> 信息中心 >
将JsonArray转化为List时JSONArray.toCollection不执行是怎么回事,跪求大侠
来源:互联网 发表时间: 4:54:26 责任编辑:李志喜字体:
为了帮助网友解决“将JsonArray转化为List时JSONArray.toCollection不执行是怎么回事,跪求大侠”相关的问题,中国学网通过互联网对“将JsonArray转化为List时JSONArray.toCollection不执行是怎么回事,跪求大侠”相关的解决方案进行了整理,用户详细问题包括:下面代码jsonArray能取到值,执行到&List&MsModoleSub&&list&=&(List&MsModoleSub&)JSONArray.toCollection(jsonArray,&MsModoleSub.class);&这段代码时,直接跳到finally里面,这段代码不执行是怎么回事,中国学网
,具体解决方案如下:解决方案1:本帖最后由 shijing266 于
16:41:37 编辑public&static&&T&&List&T&&fromListJson(String&str,&Class&T&&clazz)&{return&JSONArray.parseArray(str,&clazz);}解决方案2:json工具类解决方案3:为什么会不执行呢,是缺少什么jar包吗?能给我一个详细的解决方案吗,谢谢大侠了中国学网
改用&.toList方法倒是执行,能取出数据库里面的3条数据,但是这三条数据都是空值,希望大神门能给一个详细一点的解决方案,本人是菜鸟,万分感谢大侠相助了中国学网
解决方案4:你的MsModolSub&里面的字段跟json里面的属性名称对应么解决方案5:json里面是下划线,你的对象里面&是驼峰结构,怎么能转成功?&&解决办法:1、改MsModolSub&里面的属性,改成跟json一样下划线的2、改json返回数据,改成跟MsModolSub&对象属性名称一样的名字解决方案6:引用&5&楼&执笔记忆的空白的回复:json里面是下划线,你的对象里面&是驼峰结构,怎么能转成功?&&解决办法:1、改MsModolSub&里面的属性,改成跟json一样下划线的2、改json返回数据,改成跟MsModolSub&对象属性名称一样的名字解决了,太太太感谢了
1个回答1个回答1个回答1个回答1个回答1个回答1个回答1个回答1个回答1个回答
相关文章:
<a href="/cse/search?q=<inputclass="s-btn"type="submit"text="<inputclass="s-btn"type="submit"text="<buttonhidefocusclass="s-btnjs-ask-btn"text="我要提问
<a href="/cse/search?q=JAVA解析JSON,json对象转为javabean
- 鬼烧java - ITeye技术网站
博客分类:
一json-lib.jar开发包使用依赖包 json-lib.jar开发包使用需要依赖包以下开发包: Json-lib requires (at least) the following dependencies in your classpath:
* jakarta commons-lang 2.4
* jakarta commons-beanutils 1.7.0
* jakarta commons-collections 3.2
* jakarta commons-logging 1.1.1
* ezmorph 1.0.6 .二. public class JsonUtil { /**页面传至后台时,json数据在request的参数名称*/ public final static String JSON_ATTRIBUTE = "json"; public final static String JSON_ATTRIBUTE1 = "json1"; public final static String JSON_ATTRIBUTE2 = "json2"; public final static String JSON_ATTRIBUTE3 = "json3"; public final static String JSON_ATTRIBUTE4 = "json4"; /** * 从一个JSON 对象字符格式中得到一个java对象,形如: * {"id" : idValue, "name" : nameValue, "aBean" : {"aBeanId" : aBeanIdValue, ...}} * @param object * @param clazz * @return */ public static Object getDTO(String jsonString, Class clazz){ JSONObject jsonObject = try{ setDataFormat2JAVA(); jsonObject = JSONObject.fromObject(jsonString); }catch(Exception e){ e.printStackTrace(); } return JSONObject.toBean(jsonObject, clazz); } /** * 从一个JSON 对象字符格式中得到一个java对象,其中beansList是一类的集合,形如: * {"id" : idValue, "name" : nameValue, "aBean" : {"aBeanId" : aBeanIdValue, ...}, * beansList:[{}, {}, ...]} * @param jsonString * @param clazz * @param map 集合属性的类型 (key : 集合属性名, value : 集合属性类型class) eg: ("beansList" : Bean.class) * @return */ public static Object getDTO(String jsonString, Class clazz, Map map){ JSONObject jsonObject = try{ setDataFormat2JAVA(); jsonObject = JSONObject.fromObject(jsonString); }catch(Exception e){ e.printStackTrace(); } return JSONObject.toBean(jsonObject, clazz, map); } /** * 从一个JSON数组得到一个java对象数组,形如: * [{"id" : idValue, "name" : nameValue}, {"id" : idValue, "name" : nameValue}, ...] * @param object * @param clazz * @return */ public static Object[] getDTOArray(String jsonString, Class clazz){ setDataFormat2JAVA(); JSONArray array = JSONArray.fromObject(jsonString); Object[] obj = new Object[array.size()]; for(int i = 0; i & array.size(); i++){ JSONObject jsonObject = array.getJSONObject(i); obj[i] = JSONObject.toBean(jsonObject, clazz); }
} /** * 从一个JSON数组得到一个java对象数组,形如: * [{"id" : idValue, "name" : nameValue}, {"id" : idValue, "name" : nameValue}, ...] * @param object * @param clazz * @param map * @return */ public static Object[] getDTOArray(String jsonString, Class clazz, Map map){ setDataFormat2JAVA(); JSONArray array = JSONArray.fromObject(jsonString); Object[] obj = new Object[array.size()]; for(int i = 0; i & array.size(); i++){ JSONObject jsonObject = array.getJSONObject(i); obj[i] = JSONObject.toBean(jsonObject, clazz, map); }
} /** * 从一个JSON数组得到一个java对象集合 * @param object * @param clazz * @return */ public static List getDTOList(String jsonString, Class clazz){ setDataFormat2JAVA(); JSONArray array = JSONArray.fromObject(jsonString); List list = new ArrayList(); for(Iterator iter = array.iterator(); iter.hasNext();){ JSONObject jsonObject = (JSONObject)iter.next(); list.add(JSONObject.toBean(jsonObject, clazz)); }
} /** * 从一个JSON数组得到一个java对象集合,其中对象中包含有集合属性 * @param object * @param clazz * @param map 集合属性的类型 * @return */ public static List getDTOList(String jsonString, Class clazz, Map map){ setDataFormat2JAVA(); JSONArray array = JSONArray.fromObject(jsonString); List list = new ArrayList(); for(Iterator iter = array.iterator(); iter.hasNext();){ JSONObject jsonObject = (JSONObject)iter.next(); list.add(JSONObject.toBean(jsonObject, clazz, map)); }
} /** * 从json HASH表达式中获取一个map,该map支持嵌套功能 * 形如:{"id" : "johncon", "name" : "小强"} * 注意commons-collections版本,必须包含mons.collections.map.MultiKeyMap * @param object * @return */ public static Map getMapFromJson(String jsonString) { setDataFormat2JAVA();
JSONObject jsonObject = JSONObject.fromObject(jsonString);
Map map = new HashMap();
for(Iterator iter = jsonObject.keys(); iter.hasNext();){
String key = (String)iter.next();
map.put(key, jsonObject.get(key));
* 从json数组中得到相应java数组
* json形如:["123", "456"]
* @param jsonString
public static Object[] getObjectArrayFromJson(String jsonString) {
JSONArray jsonArray = JSONArray.fromObject(jsonString);
return jsonArray.toArray();
} /** * 把数据对象转换成json字符串 * DTO对象形如:{"id" : idValue, "name" : nameValue, ...} * 数组对象形如:[{}, {}, {}, ...] * map对象形如:{key1 : {"id" : idValue, "name" : nameValue, ...}, key2 : {}, ...} * @param object * @return */ public static String getJSONString(Object object) throws Exception{ String jsonString = //日期值处理器 JsonConfig jsonConfig = new JsonConfig(); jsonConfig.registerJsonValueProcessor(java.util.Date.class, new JsonDateValueProcessor()); if(object != null){ if(object instanceof Collection || object instanceof Object[]){ jsonString = JSONArray.fromObject(object, jsonConfig).toString(); }else{ jsonString = JSONObject.fromObject(object, jsonConfig).toString(); } } return jsonString == null ? "{}" : jsonS } private static void setDataFormat2JAVA(){ //设定日期转换格式 JSONUtils.getMorpherRegistry().registerMorpher(new DateMorpher(new String[] {"yyyy-MM-dd", "yyyy-MM-dd HH:mm:ss"})); } public static void main(String[] arg) throws Exception{ String s = "{status : 'success'}"; System.out.println(" object : " + JsonUtil.getJSONString(s)); } } import java.text.SimpleDateF import java.util.D import net.sf.json.JsonC import net.sf.json.processors.JsonValueP /* * @author johncon * 创建日期
* json日期值处理器 */ public class JsonDateValueProcessor implements JsonValueProcessor { private String format = "yyyy-MM-dd HH:mm:ss"; public JsonDateValueProcessor() { } 三解析如下例子 String rowidString="[{\"kl_id\":\"2\",\"kl_title\":\"Test date\",\"kl_content\":\"Test date\",\"kl_type\":\"1\",\"id\":\"1\"},{\"kl_id\":\"2\",\"kl_title\":\"Test\",\"kl_content\":\"Test\",\"kl_type\":\"1\",\"id\":\"2\"}]"; JSONArray array = JSONArray.fromObject(rowidString); Object[] obj = new Object[array.size()];
for(int i = 0; i & array.size(); i++){
JSONObject jsonObject = array.getJSONObject(i);
System.out.println(jsonObject.get("kl_id"));
} public JsonDateValueProcessor(String format) { this.format = } public Object processArrayValue(Object value, JsonConfig jsonConfig) { return process(value, jsonConfig); } public Object processObjectValue(String key, Object value, JsonConfig jsonConfig) { return process(value, jsonConfig); } private Object process( Object value, JsonConfig jsonConfig ) { if (value instanceof Date) { String str = new SimpleDateFormat(format).format((Date) value);
} return value == null ? null : value.toString(); } public String getFormat() {
} public void setFormat(String format) { this.format = } } 对于对象中有明确类型的对象属性,可不管;但对象中有集合属性的,由于类型不明确,所以要先明确类型: String jsonString = request.getParameter("json"); //增加对象中的集合属性的类型以及对象元素中的对象属性的集合属性的类型 Map clazzMap = new HashMap(); //secondItems是FirstDTO里的集合属性 clazzMap.put("secondItems", SecondDTO.class); //thirdItems是SecondDTO里的集合属性 clazzMap.put("thirdItems", ThirdDTO.class); FirstDTO firstDTO = (FirstDTO)JsonUtil.getDTO(jsonString, FirstDTO.class, clazzMap);
浏览 11493
浏览: 257124 次
来自: 北京
lin_li 写道请问你这里怎么操作的啊?tar xvf su ...
请问你这里怎么操作的啊?tar xvf subversion- ...
json转javabean工具 [url]http://www ...
json转javabean工具 [url]http://www ...
楼主谢谢了,&>&&>&&>&&>&java-对象数组转换为json
java-对象数组转换为json
上传大小:7KB
java-对象数组转换为json,自己的记录,能帮到人更好
综合评分:4(19位用户评分)
所需积分:0
下载次数:184
审核通过送C币
创建者:andy8921
创建者:jin80506
创建者:jerryshen
课程推荐相关知识库
上传者其他资源上传者专辑
开发技术热门标签
VIP会员动态
您因违反CSDN下载频道规则而被锁定帐户,如有疑问,请联络:!
android服务器底层网络模块的设计方法
所需积分:0
剩余积分:720
您当前C币:0
可兑换下载积分:0
兑换下载分:
兑换失败,您当前C币不够,请先充值C币
消耗C币:0
你当前的下载分为234。
java-对象数组转换为json
会员到期时间:
剩余下载次数:
你还不是VIP会员
开通VIP会员权限,免积分下载
你下载资源过于频繁,请输入验证码
您因违反CSDN下载频道规则而被锁定帐户,如有疑问,请联络:!
若举报审核通过,可奖励20下载分
被举报人:
举报的资源分:
请选择类型
资源无法下载
资源无法使用
标题与实际内容不符
含有危害国家安全内容
含有反动色情等内容
含广告内容
版权问题,侵犯个人或公司的版权
*详细原因:json字符串转换为JSONObject和JSONArray .
具体转化过程
//JSONObject
&String jsonMessage = &{\&语文\&:\&88\&,\&数学\&:\&78\&,\&计算机\&:\&99\&}&;
& String value1 =
&& //将字符串转换成jsonObject对象
&& JSONObject myJsonObject = new JSONObject(jsonMessage);
&& //获取对应的值
&& value1 = myJsonObject.getString(&数学&);
& catch (JSONException e)
& System.out.println(&value1=&+value1);
//JSONArray
jsonMessage = &[{&#39;num&#39;:&#39;成绩&#39;, &#39;外语&#39;:88, &#39;历史&#39;:65, &#39;地理&#39;:99, &#39;object&#39;:{&#39;aaa&#39;:&#39;1111&#39;,&#39;bbb&#39;:&#39;2222&#39;,&#39;cccc&#39;:&#39;3333&#39;}},& +
&&&&&&&&&& &{&#39;num&#39;:&#39;兴趣&#39;, &#39;外语&#39;:28, &#39;历史&#39;:45, &#39;地理&#39;:19, &#39;object&#39;:{&#39;aaa&#39;:&#39;11a11&#39;,&#39;bbb&#39;:&#39;2222&#39;,&#39;cccc&#39;:&#39;3333&#39;}},& +
&&&&&&&&&& &{&#39;num&#39;:&#39;爱好&#39;, &#39;外语&#39;:48, &#39;历史&#39;:62, &#39;地理&#39;:39, &#39;object&#39;:{&#39;aaa&#39;:&#39;11c11&#39;,&#39;bbb&#39;:&#39;2222&#39;,&#39;cccc&#39;:&#39;3333&#39;}}]&;
& JSONArray myJsonA
&& myJsonArray = new JSONArray(jsonMessage);
&& for(int i=0 ; i & myJsonArray.length() ;i++)
&&& //获取每一个JsonObject对象
&&& JSONObject myjObject = myJsonArray.getJSONObject(i);
&&& //获取每一个对象中的值
&&& String numString = myjObject.getString(&num&);
&&& int englishScore = myjObject.getInt(&外语&);
&&& int historyScore = myjObject.getInt(&历史&);
&&& int geographyScore = myjObject.getInt(&地理&);
&&& //获取数组中对象的对象
&&& JSONObject myjObject2 = myjObject.getJSONObject(&object&);
&&& String aaaString = myjObject2.getString(&aaa&);
&&& System.out.println(&aaaString=&+aaaString);
&&& System.out.println(&numString=&+numString);
&&& System.out.println(&englishScore=&+englishScore);
&&& System.out.println(&historyScore=&+historyScore);
&&& System.out.println(&geographyScore=&+geographyScore);
& catch (JSONException e)
(window.slotbydup=window.slotbydup || []).push({
id: '2467140',
container: s,
size: '1000,90',
display: 'inlay-fix'
(window.slotbydup=window.slotbydup || []).push({
id: '2467141',
container: s,
size: '1000,90',
display: 'inlay-fix'
(window.slotbydup=window.slotbydup || []).push({
id: '2467142',
container: s,
size: '1000,90',
display: 'inlay-fix'
(window.slotbydup=window.slotbydup || []).push({
id: '2467143',
container: s,
size: '1000,90',
display: 'inlay-fix'
(window.slotbydup=window.slotbydup || []).push({
id: '2467148',
container: s,
size: '1000,90',
display: 'inlay-fix'android json string变换jsonarray 报错 - Android当前位置:& &&&android json string变换jsonarray 报错android json string变换jsonarray 报错&&网友分享于:&&浏览:992次android json string转换jsonarray 报错post.setEntity(new UrlEncodedFormEntity(params,&utf-8&));
HttpResponse httpResponse = httpClient.execute(post);
if(httpResponse.getStatusLine().getStatusCode() == 200)
String result = EntityUtils.toString(httpResponse.getEntity(),&utf-8&);
}result = 02-13 12:12:04.011: INFO/System.out(951): [{&id&:&2&,&user&:&gc&,&psw&:&okokok&}] &
JSONArray array=new JSONArray(result);这个地方报错02-13 11:57:20.652: ERROR/test(568): org.json.JSONException: Value
of type java.lang.String cannot be converted to JSONArray------解决方案--------------------
String jsonString = &{\&FLAG\&:\&flag\&,\&MESSAGE\&:\&SUCCESS\&,\&name\&:[{\&name\&:\&jack\&},{\&name\&:\&lucy\&}]}&;JSONObject result = new JSONObject(jsonString);JSONArray nameList = result.getJSONArray(&name&);参考 http://blog.csdn.net/vincent_czz/article/details/7333977
12345678910
12345678910
12345678910 上一篇:下一篇:文章评论相关解决方案 12345678910 Copyright & &&版权所有

我要回帖

更多关于 jsonarray转换成数组 的文章

 

随机推荐