晕死,这个不是拼List,而是应该拼对象。。 其实更合理的拼写法是以年份为对象拼写的。 而你拼出来的那个根本就不算是json传吧。 按照你的想法,对象应该这样构建 class D{ A1 a1; A2 a2; A3 a3; } class A1{ List<Data> list } class Data{ String year; int num; }
直接用JSONObject和JSONArray来处理撒....(需要json相关的jar包) public static void main(String[] args) throws Exception{ JSONArray array = new JSONArray(); JSONArray array1 = new JSONArray(); array1.add(2010); array1.add(6545); JSONArray array2 = new JSONArray(); array2.add(2011); array2.add(6631); JSONArray array3 = new JSONArray(); array3.add(2012); array3.add(6139); array.add(array1); array.add(array2); array.add(array3); System.out.println(array); // 运行结果[[2010,6545],[2011,6631],[2012,6139]] JSONObject object = new JSONObject(); object.put("data", array);
System.out.println(object); // 运行结果{"data":[[2010,6545],[2011,6631],[2012,6139]]} JSONObject object1 = new JSONObject(); object1.put("data", array);
JSONArray data = new JSONArray(); data.add(object); data.add(object1);
private String a0;
private String a1;
private String a2;
private String a3;
private String a4;
private String a5;
private String a6;
private String a7;
private String a8;
private String a9;
private String a10;
private String a11;
private String c0;
private String c1;
private String c2;
private String c3;
private String c4;
private String c5;
private String c6;
private String c7;
private String c8;
private String c9;
private String c10;
private String c11;
private String year;
//geter seter省略
}ResultSet转换成list代码public static List<LineMulitibean> resultSetToList(ResultSet rs,
LineMulitibean lm) throws java.sql.SQLException {
List<LineMulitibean> list = new ArrayList<LineMulitibean>();
if (rs == null)
return Collections.emptyList();
while (rs.next()) { LineMulitibean bean = new LineMulitibean();
for (int i = 1; i <= rs.getMetaData().getColumnCount(); i++) {
if (rs.getMetaData().getColumnName(i).equals("a0")) {
bean.setA0(rs.getString("a0"));
}
if (rs.getMetaData().getColumnName(i).equals("a1")) {
bean.setA1(rs.getString("a1"));
}
if (rs.getMetaData().getColumnName(i).equals("a2")) {
bean.setA2(rs.getString("a2"));
}
if (rs.getMetaData().getColumnName(i).equals("a3")) {
bean.setA3(rs.getString("a3"));
}
if (rs.getMetaData().getColumnName(i).equals("a4")) {
bean.setA4(rs.getString("a4"));
}
if (rs.getMetaData().getColumnName(i).equals("a5")) {
bean.setA5(rs.getString("a5"));
}
if (rs.getMetaData().getColumnName(i).equals("a6")) {
bean.setA6(rs.getString("a6"));
}
if (rs.getMetaData().getColumnName(i).equals("a7")) {
bean.setA7(rs.getString("a7"));
}
if (rs.getMetaData().getColumnName(i).equals("a8")) {
bean.setA8(rs.getString("a8"));
}
if (rs.getMetaData().getColumnName(i).equals("a9")) {
bean.setA9(rs.getString("a9"));
}
if (rs.getMetaData().getColumnName(i).equals("a10")) {
bean.setA10(rs.getString("a10"));
}
if (rs.getMetaData().getColumnName(i).equals("a11")) {
bean.setA11(rs.getString("a11"));
} } if (!"".equals(rs.getString("year"))) {
bean.setYear(rs.getString("year"));
}
bean.setLineTitle(lm.getLineTitle()); list.add(bean);
} return list;
}
拼Json串LineMulitidao lineMultidao = new LineMulitidaoImpl();
List<LineMulitibean> ls = lineMultidao.getLineMulitidao(qry, lm);//返回一个List然后拼串我怎么都拼不对。
year a0 ->123 a1-->324 等等。应该可以的。
其实更合理的拼写法是以年份为对象拼写的。
而你拼出来的那个根本就不算是json传吧。
按照你的想法,对象应该这样构建
class D{
A1 a1;
A2 a2;
A3 a3;
}
class A1{
List<Data> list
}
class Data{
String year;
int num;
}
JSONArray array = new JSONArray();
JSONArray array1 = new JSONArray();
array1.add(2010);
array1.add(6545);
JSONArray array2 = new JSONArray();
array2.add(2011);
array2.add(6631);
JSONArray array3 = new JSONArray();
array3.add(2012);
array3.add(6139);
array.add(array1);
array.add(array2);
array.add(array3);
System.out.println(array);
// 运行结果[[2010,6545],[2011,6631],[2012,6139]]
JSONObject object = new JSONObject();
object.put("data", array);
System.out.println(object);
// 运行结果{"data":[[2010,6545],[2011,6631],[2012,6139]]} JSONObject object1 = new JSONObject();
object1.put("data", array);
JSONArray data = new JSONArray();
data.add(object);
data.add(object1);
System.out.println(data);
// 运行结果[{"data":[[2010,6545],[2011,6631],[2012,6139]]},{"data":[[2010,6545],[2011,6631],[2012,6139]]}]
}