第三方插件将数据转成json

1.需要使用第三方jar

commons-beanutils-1.7.0.jar /commons-collections-3.1.jar/commons-lang-2.5jar /commons-logging-1.1.1.jar /exmorph-1.0.3.jar/json-lib-2.1-jdk15.jar     

2.转换语法

(1)javaBean---->json

   JSONArray jsonArray = JSONArray.formatObject(city); 

    String jsonJava = jsonArray.toString();

(2)List<JavaBean>----->json

   JSONArray jsonArray = JSONArray.formatObject(cityList); 

    String jsonJava = jsonArray.toString();

 (3)List<String>--->json

   JSONArray jsonArray = JSONArray.formatObject(StringList); 

    String jsonJava = jsonArray.toString();

(4)Set<JavaBean>----->JSON

 JSONArray jsonArray = JSONArray.formatObject(citySet); 

    String jsonJava = jsonArray.toString();

(5)Map<String,Object>----->JSON

 JSONArray jsonArray = JSONArray.formatObject(map); 

    String jsonJava = jsonArray.toString();

我们可以是struts2可以将数据转换成json,也可以通过第三方jar,将数据转换成json.

3.举例:javaBean---->json

public class TestBean2Json {
    private static void javabean2json() {
        City city = new City(1,"陕西");
        JSONArray jSONArray = JSONArray.fromObject(city);
        String jsonJAVA = jSONArray.toString();
        System.out.println(jsonJAVA);
        //[{"id":1,"name":"陕西"}]
    }

Map<String,Object>----->JSON

MAP:
private static void map2json() {
        
        List<City> cityList = new ArrayList<City>();
        cityList.add(new City(1,"西安"));
        cityList.add(new City(2,"临潼"));
        
        Map<String,Object> map = new LinkedHashMap<String,Object>();
        map.put("total",cityList.size());//表示集合的长度
        map.put("rows",cityList);//rows表示集合
        
        JSONArray jSONArray = JSONArray.fromObject(map);
        String jsonJAVA = jSONArray.toString();
        System.out.println(jsonJAVA);
        //[{"total":2,"rows":[{"id":1,"name":"西安"},{"id":2,"name":"临潼"}]}]
        
        jsonJAVA = jsonJAVA.substring(1,jsonJAVA.length()-1);
        System.out.println(jsonJAVA);
    }

List<JavaBean>----->json

List:
    private static void javabeanlist2json() {
        List<City> cityList = new ArrayList<City>();
        cityList.add(new City(1,"中山"));
        cityList.add(new City(2,"佛山"));
        Province province = new Province(1,"广东",cityList);
        
        JSONArray jSONArray = JSONArray.fromObject(province);
        String jsonJAVA = jSONArray.toString();
        System.out.println(jsonJAVA);
        /*
          [
             {
              "id":1,
              "name":"广东"
              "cityList":[{"id":1,"name":"中山"},{"id":2,"name":"佛山"}],
             }
          ]
          */
    }

List<String>--->json

private static void list2json() {
        List<City> cityList = new ArrayList<City>();
        cityList.add(new City(1,"广州"));
        cityList.add(new City(2,"珠海"));
        JSONArray jSONArray = JSONArray.fromObject(cityList);
        String jsonJAVA = jSONArray.toString();
        System.out.println(jsonJAVA);
        //[{"id":1,"name":"广州"},{"id":2,"name":"珠海"}]
    }

Set<JavaBean>-------->JSON

    private static void set2json() {
        Set<City> citySet = new LinkedHashSet<City>();
        citySet.add(new City(1,"广州"));
        citySet.add(new City(2,"珠海"));
        JSONArray jSONArray = JSONArray.fromObject(citySet);
        String jsonJAVA = jSONArray.toString();
        System.out.println(jsonJAVA);
        //[{"id":1,"name":"广州"},{"id":2,"name":"珠海"}]
    }

5。json的特点

(1)在客户端上,直接三使用js进行解析,无需其它jar。

(2)在本质上就是一个文本,只是改文本有特定的书写格式。

(3)通过第三方jar转换成json。

(4)优点:json与xml很相似,但是它更加轻巧,服务器只是将数据发送,不用发送复杂的xml格式的文档了。

(5)缺点:语法语言严谨,如果写错,就不会得到效果。

工具:可以使用火狐的firebug进行测试。

posted @ 2018-01-13 16:52  kwdeep  阅读(991)  评论(0编辑  收藏  举报