java 后台封装json数据学习总结(二)

一、JSONArray的应用

从json数组中得到相应java数组,如果要获取java数组中的元素,只需要遍历该数组。

		/*
		 * 从json数组中得到相应java数组
		 * JSONArray下的toArray()方法的使用
		 */
		 JSONArray jsonStrs = new JSONArray();
         jsonStrs.add(0, "cat");
         jsonStrs.add(1, "dog");
         jsonStrs.add(2, "bird");
         jsonStrs.add(3, "duck");

         Object[] obj=jsonStrs.toArray();
         for(int i=0;i<obj.length;i++){
                System.out.println(obj[i]);
         }

从json数组中得到java数组,可以对该数组进行转化,如将JSONArray转化为String型、Long型、Double型、Integer型、Date型等等。 
分别采用jsonArray下的getString(index)、getLong(index)、getDouble(index)、getInt(index)等方法。 
同样,如果要获取java数组中的元素,只需要遍历该数组。

import java.text.SimpleDateFormat;
import java.util.Date;

import net.sf.json.JSONArray;

public class Test {
	/*
	 * 从json数组中得到相应java数组
	 * JSONArray下的toArray()方法的使用
	 */
  public static Object[] getJsonToArray(String str) {
        JSONArray jsonArray = JSONArray.fromObject(str);
        return jsonArray.toArray();
  }
  /**
   * 将json数组转化为Long型
   */
  public static Long[] getJsonToLongArray(String str) {
      JSONArray jsonArray = JSONArray.fromObject(str);
      Long[] arr=new Long[jsonArray.size()];
      for(int i=0;i<jsonArray.size();i++){
           arr[i]=jsonArray.getLong(i);
           //System.out.println(arr[i]);
      }
      return arr;
  }
  /**
   * 将json数组转化为String型
   */
  public static String[] getJsonToStringArray(String str) {
       JSONArray jsonArray = JSONArray.fromObject(str);
       String[] arr=new String[jsonArray.size()];
       for(int i=0;i<jsonArray.size();i++){
           arr[i]=jsonArray.getString(i);
           System.out.println(arr[i]);
       }
       return arr;
  }
  /**
   * 将json数组转化为Double型
   */
  public static Double[] getJsonToDoubleArray(String str) {
       JSONArray jsonArray = JSONArray.fromObject(str);
       Double[] arr=new Double[jsonArray.size()];
       for(int i=0;i<jsonArray.size();i++){
           arr[i]=jsonArray.getDouble(i);
       }
       return arr;
  }
  /**
   * 将json数组转化为Date型
   */
  public static Date[] getJsonToDateArray(String jsonString) {
       JSONArray jsonArray = JSONArray.fromObject(jsonString);
       Date[] dateArray = new Date[jsonArray.size()];
       String dateString;
       Date date;
       SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
       for (int i = 0; i < jsonArray.size(); i++) {
           dateString = jsonArray.getString(i);
           try {
               date=sdf.parse(dateString);
               dateArray[i] = date;
           } catch (Exception e) {
               e.printStackTrace();
           }
       }
       return dateArray;
     }
  public static void main(String[] args) {
     JSONArray jsonLongs = new JSONArray();
     jsonLongs.add(0, "111");
     jsonLongs.add(1, "222.25");
     jsonLongs.add(2, new Long(333));
     jsonLongs.add(3, 444);

     Long[] log=getJsonToLongArray(jsonLongs.toString());
     for(int i=0;i<log.length;i++){
         System.out.println(log[i]);
     }

     JSONArray jsonStrs = new JSONArray();
     jsonStrs.add(0, "2011-01-01");
     jsonStrs.add(1, "2011-01-03");
     jsonStrs.add(2, "2011-01-04 11:11:11");

     Date[] d=getJsonToDateArray(jsonStrs.toString());
     for(int i=0;i<d.length;i++){
         System.out.println(d[i]);
     }
 }
}

运行结构:

111
222
333
444
Sat Jan 01 00:00:00 CST 2011
Mon Jan 03 00:00:00 CST 2011
Tue Jan 04 00:00:00 CST 2011
时间: 2024-08-08 21:55:53

java 后台封装json数据学习总结(二)的相关文章

java 后台封装json数据学习总结(一)

一.数据封装 1. List集合转换成json代码 List list = new ArrayList(); list.add( "first" ); list.add( "second" ); JSONArray jsonArray2 = JSONArray.fromObject( list ); 2. Map集合转换成json代码 Map map = new HashMap(); map.put("name", "json"

fastJson java后台转换json格式数据

什么事JSON? JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式. 易于人阅读和编写.同时也易于机器解析和生成. 它基于JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999的一个子集. JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等

jquery用ajax方式从后台获取json数据后如何将内容填充到下拉列表

对于问题从后台获取json数据,将内容填充到下拉列表,代码非常简单,具体过程请看下面代码. 需求:url:链接     par:ID       sel:下拉列表选择器 function BuildSelectBox(url, par, sel) {  $(sel).empty();  $.getJSON(url, { id: par }, function (json, textStatus) {   for (var i = json.length - 1; i >= 0; i--) {  

传递给后台的Json数据解析

后台代码如下: public void ProcessRequest(HttpContext context) { context.Response.ContentType = "application/json"; HttpRequest request = context.Request; if (request.InputStream != null && request.InputStream.Length > 0) { StreamReader read

使用Map List 封装json数据

<dependency> <groupId>net.sf.json-lib</groupId> <artifactId>json-lib</artifactId> <version>2.4</version> <classifier>jdk15</classifier> </dependency> import net.sf.json.JSONObject; public static

jquery用ajax方式从后台获取json数据,将内容填充到下拉列表。

从后台获取json数据,将内容填充到下拉列表. url:链接 par:ID sel:下拉列表选择器 //获取下拉列表 function BuildSelectBox(url, par, sel) { $(sel).empty(); $.getJSON(url, { id: par }, function (json, textStatus) { for (var i = json.length - 1; i >= 0; i--) { $(sel).prepend('<option value=

Java解析(读取)Json数据

以前看过书上说,XML是web service间传输信息的标准格式吧,就看了看XML.最近在做个网站,又说是有了JSON,第一回听说就看了看,总结总结一下. 1.JSON介绍 JSON比XML简单,主要体现在传输相同信息的情况下,文件的大小不同. JSON只用于传输信息,XML还可以用于配置文件的使用. JSON中的符号主要有: " , [ {: 2.JSON中的数组和对象 2.1数组(JSONArray) 数组用一对[],表示存放的是一般的数组数据. 如:["11",&qu

easyUI-combobox 后台导入Json数据的方法

一.前台页面: <input id="List" class="easyui-combobox" data-options="valueField:'ID',textField:'NAME'" style="width: 170px;height:25px;"/> 二.JS代码: $.ajax({ url:baseCtx+"/actions/getListInfo.action",//获取数据库

Java后台 解析JSON的几个方法

1.对象转JSON对象. public static void main(String[] args) { Domain demo = new Domain( "在线JSON校验格式化工具 -SOJSON在线工具(sojson.com)", "http://www.sojson.com/", "提供json在线格式化,json在线格式化工具,json 格式化输出,json格式化 空串,json 格式化插件,json字符串格式化,json视图,json 在线