161.使用fastjson將json格式的數據轉化爲對象

1. 導入fastjson的jar包

        <!-- 9.fastjson -->
            <dependency>
                <groupId>com.alibaba</groupId>
                <artifactId>fastjson</artifactId>
                <version>1.2.47</version>
            </dependency>

2. 經常使用幾種類型的json轉化爲對象

 

 

2.1 對象形式的json

    @RequestMapping("/EasyJsonToObject.action")
    public void EasyJsonToObject(){
        
        //(1) 建立一個對象並將 給對象賦值 而後使用fastjson轉化爲json類型的數據   
            Student student = new  Student();
                    student.setId(UUID.randomUUID().toString().replaceAll("-", ""));//生成id
                    student.setName("張三");
                    student.setPassword("122455");
            String studentJson = JSON.toJSONString(student);//將對象轉json
            System.out.println(studentJson);
                
            
        //(2)再將對象轉化爲
        Student changeStudent = JSON.parseObject(studentJson,Student.class);
        System.out.println(changeStudent);
    }

2.1.1 將對象轉化爲json

須要的實體類格式:json

轉換過程:數組

2.1.2 將json數據轉爲對象

2.2 將list對象轉爲json 而後將對象list數據

@RequestMapping("/listJsonToObject.action")
    public void listJsonToObject(){
        
        //(1) 建立一個對象並將 給對象賦值 而後使用fastjson轉化爲json類型的數據   
               List<Student> list= new ArrayList<Student>();
                Student student = new  Student();
                    student.setId(UUID.randomUUID().toString().replaceAll("-", ""));//生成id
                    student.setName("劉瑩");
                    student.setPassword("123456");
               Student student2 = new  Student();
                    student2.setId(UUID.randomUUID().toString().replaceAll("-", ""));//生成id
                    student2.setName("張曉琪");
                    student2.setPassword("789456");
                    list.add(student);
                    list.add(student2);
            String studentJson = JSON.toJSONString(list);//將對象轉json
            System.out.println(studentJson);
        
        
        //(2)再將對象轉化爲
        List<Student> list2 = JSON.parseArray(studentJson,Student.class);
        System.out.println(list2);
    }

 

須要的實體類對象app

2.3  對象中含有對象 轉化爲對象

    @RequestMapping("/mapListJsonToObject.action")
    public void mapListJsonToObject(){
        
        //(1) 建立一個對象並將 給對象賦值 而後使用fastjson轉化爲json類型的數據   
        HashMap<String, Object> map = new   HashMap<String,Object>();//用來裝數據
        
        Student student = new  Student();
            student.setId(UUID.randomUUID().toString().replaceAll("-", ""));//生成id
            student.setName("劉思佳");
            student.setPassword("123456");
        
            map.put("code", "200");
            map.put("data", student);
        String studentJson = JSON.toJSONString(map);//將對象轉json
        System.out.println(studentJson);
        //(2)再將對象轉化爲
        Data data = JSON.parseObject(studentJson,Data.class);
        System.out.println(data);
    }

 

 

2.4 對象中含有list的json格式

    /**
     * 3.複雜json轉爲對象
     *                                        對象中包含數組的json
     * http://localhost:8080/mavenssm20180519//josnIncludeListJsonToObject.action
     * @Title: josnIncludeListJsonToObject
     * @Description: 
     * @return void
     * @throws 
       @date 2018年7月22日 下午10:46:00
     */
    @RequestMapping("/josnIncludeListJsonToObject.action")
    public void josnIncludeListJsonToObject(){
        //(1) 建立一個對象並將 給對象賦值 而後使用fastjson轉化爲json類型的數據   
        HashMap<String, Object> map = new   HashMap<String,Object>();//用來裝數據
        
        List<Student> list= new ArrayList<Student>();
        Student student = new  Student();
            student.setId(UUID.randomUUID().toString().replaceAll("-", ""));//生成id
            student.setName("劉思佳");
            student.setPassword("123456");
        Student student2 = new  Student();
            student2.setId(UUID.randomUUID().toString().replaceAll("-", ""));//生成id
            student2.setName("陳曉瑩");
            student2.setPassword("789456");
        list.add(student);
        list.add(student2);
            map.put("code", "200");
            map.put("data", list);
            String studentJson = JSON.toJSONString(map);//將對象轉json
        System.out.println(studentJson);
        //(2)再將對象轉化爲
     Data data = JSON.parseObject(studentJson,Data.class);
        System.out.println(data);
    }

須要的實體類(****重要)dom

 將maven

相關文章
相關標籤/搜索