问题描述
就是一句话java对象咋转成json数组例如:json转成String类型privateStringcartype;publicStringgetCartype(){returncartype;}publicvoidsetCartype(Stringcartype){this.cartype=cartype;}
解决方案
解决方案二:
对象转化成json根式的字符串?有个jar包里的工具类支持百度之~
解决方案三:
楼主是这样吗?Useruser=newUser();user.setName("hello");user.setPassword("123");JSONArrayjson=JSONArray.fromObject(user);System.out.println(json.toString());
解决方案四:
http://json-lib.sourceforge.net你使用这个小jar解决你的问题吧如果确定你的类在程序中会生成json字符串,那就建议在你的类中类似toString()一样,提供一个toJson()的方法这样在多类嵌套包含时会比较方便..
解决方案五:
我要的是数组前台要咋便利数组[{"id":0,"wheeltype":"","carname":"","cartype":"德国大众"}]
解决方案六:
varret='[{"id":0,"wheeltype":"","carname":"","cartype":"德国大众"}]';vars="retArray="+ret;eval(s);这样retArray就是你要的数组retArray[0]就是一个json了
解决方案七:
引用5楼kjwxj的回复:
JScriptcodevarret='[{"id":0,"wheeltype":"","carname":"","cartype":"德国大众"}]';vars="retArray="+ret;eval(s);这样retArray就是你要的数组retArray[0]就是一个json了
或者retArray.id就是id的值。retArray.carname就是carname的值。json的规则是key-value。所以可以通过key取得它的value。遍历的话循环或者直接用key取值就行。
解决方案八:
json.org好运...或者json-lib...支持序列化和反序列化
解决方案九:
看看这是不是你要的答案importjava.beans.IntrospectionException;importjava.beans.Introspector;importjava.beans.PropertyDescriptor;importjava.util.List;/***<p>*@author...*<p>*@Date2010-9-18下午05:47:27*<p>*/publicclassJsonUtil{/***@paramobject*任意对象*@returnjava.lang.String*/publicstaticStringobjectToJson(Objectobject){StringBuilderjson=newStringBuilder();if(object==null){json.append("""");}elseif(objectinstanceofString||objectinstanceofInteger||objectinstanceofDouble){json.append(""").append((String)object).append(""");}else{json.append(beanToJson(object));}returnjson.toString();}/***功能描述:传入任意一个javabean对象生成一个指定规格的字符串**@parambean*bean对象*@returnString*/publicstaticStringbeanToJson(Objectbean){StringBuilderjson=newStringBuilder();json.append("{");PropertyDescriptor[]props=null;try{props=Introspector.getBeanInfo(bean.getClass(),Object.class).getPropertyDescriptors();}catch(IntrospectionExceptione){}if(props!=null){for(inti=0;i<props.length;i++){try{Stringname=objectToJson(props[i].getName());Stringvalue=objectToJson(props[i].getReadMethod().invoke(bean));json.append(name);json.append(":");json.append(value);json.append(",");}catch(Exceptione){}}json.setCharAt(json.length()-1,'}');}else{json.append("}");}returnjson.toString();}/***功能描述:通过传入一个列表对象,调用指定方法将列表中的数据生成一个JSON规格指定字符串**@paramlist*列表对象*@returnjava.lang.String*/publicstaticStringlistToJson(List<?>list){StringBuilderjson=newStringBuilder();json.append("[");if(list!=null&&list.size()>0){for(Objectobj:list){json.append(objectToJson(obj));json.append(",");}json.setCharAt(json.length()-1,']');}else{json.append("]");}System.out.println("----------"+json.toString());returnjson.toString();}}
解决方案十:
packageshmc.bass.healthInfo.notesendconfig.utils;importjava.beans.IntrospectionException;importjava.beans.Introspector;importjava.beans.PropertyDescriptor;importjava.math.BigDecimal;importjava.math.BigInteger;importjava.util.List;importjava.util.Map;importjava.util.Set;/***序列化对象为JSON格式遵循JSON组织公布标准**@date2008/05/07*@version1.0.0*/publicclassJsonUtils{/**CommonsLogginginstance.*/privatestaticorg.apache.commons.logging.Loglog=org.apache.commons.logging.LogFactory.getLog(JsonUtils.class);/***@paramobj任意对象*@returnString*/publicstaticStringobject2json(Objectobj){StringBuilderjson=newStringBuilder();if(obj==null){json.append("""");}elseif(objinstanceofString||objinstanceofInteger||objinstanceofFloat||objinstanceofBoolean||objinstanceofShort||objinstanceofDouble||objinstanceofLong||objinstanceofBigDecimal||objinstanceofBigInteger||objinstanceofByte){json.append(""").append(string2json(obj.toString())).append(""");}elseif(objinstanceofObject[]){json.append(array2json((Object[])obj));}elseif(objinstanceofList){json.append(list2json((List<?>)obj));}elseif(objinstanceofMap){json.append(map2json((Map<?,?>)obj));}elseif(objinstanceofSet){json.append(set2json((Set<?>)obj));}else{json.append(bean2json(obj));}returnjson.toString();}/***@parambeanbean对象*@returnString*/publicstaticStringbean2json(Objectbean){StringBuilderjson=newStringBuilder();json.append("{");PropertyDescriptor[]props=null;try{props=Introspector.getBeanInfo(bean.getClass(),Object.class).getPropertyDescriptors();}catch(IntrospectionExceptione){}if(props!=null){for(inti=0;i<props.length;i++){try{Stringname=object2json(props[i].getName());Stringvalue=object2json(props[i].getReadMethod().invoke(bean));json.append(name);json.append(":");json.append(value);json.append(",");}catch(Exceptione){}}json.setCharAt(json.length()-1,'}');}else{json.append("}");}returnjson.toString();}/***@paramlistlist对象*@returnString*/publicstaticStringlist2json(List<?>list){StringBuilderjson=newStringBuilder();json.append("[");if(list!=null&&list.size()>0){for(Objectobj:list){json.append(object2json(obj));json.append(",");}json.setCharAt(json.length()-1,']');}else{json.append("]");}returnjson.toString();}/***@paramarray对象数组*@returnString*/publicstaticStringarray2json(Object[]array){StringBuilderjson=newStringBuilder();json.append("[");if(array!=null&&array.length>0){for(Objectobj:array){json.append(object2json(obj));json.append(",");}json.setCharAt(json.length()-1,']');}else{json.append("]");}returnjson.toString();}/***@parammapmap对象*@returnString*/publicstaticStringmap2json(Map<?,?>map){StringBuilderjson=newStringBuilder();json.append("{");if(map!=null&&map.size()>0){for(Objectkey:map.keySet()){json.append(object2json(key));json.append(":");json.append(object2json(map.get(key)));json.append(",");}json.setCharAt(json.length()-1,'}');}else{json.append("}");}returnjson.toString();}/***@paramset集合对象*@returnString*/publicstaticStringset2json(Set<?>set){StringBuilderjson=newStringBuilder();json.append("[");if(set!=null&&set.size()>0){for(Objectobj:set){json.append(object2json(obj));json.append(",");}json.setCharAt(json.length()-1,']');}else{json.append("]");}returnjson.toString();}/***@params参数*@returnString*/publicstaticStringstring2json(Strings){if(s==null)return"";StringBuildersb=newStringBuilder();for(inti=0;i<s.length();i++){charch=s.charAt(i);switch(ch){case'"':sb.append("\"");break;case'\':sb.append("\\");break;case'b':sb.append("\b");break;case'f':sb.append("\f");break;case'n':sb.append("\n");break;case'r':sb.append("\r");break;case't':sb.append("\t");break;case'/':sb.append("\/");break;default:if(ch>='u0000'&&ch<='u001F'){Stringss=Integer.toHexString(ch);sb.append("\u");for(intk=0;k<4-ss.length();k++){sb.append('0');}sb.append(ss.toUpperCase());}else{sb.append(ch);}}}returnsb.toString();}}
这个好用我们的项目中就是用这个工具类~!希望对你有帮助~!