java web-12.3JSON解析器

JSON數據和java對象的相互轉換

在這裏插入圖片描述
0.JSON解析器
常見的解析器:Jsonlib,Gson,fastjson,jackson

1.JSON轉爲java對象
(1)使用步驟:
a.導入jackson的相關jar包
b.創建jackson核心對象,ObjectMapper
c.調用ObjectMapper的相關方法進行轉換

1.readValue(json字符串數據,Class)

在這裏插入圖片描述
2.java對象轉換JSON
(1)使用步驟:
a.導入jackson的相關jar包
b.創建jackson核心對象,ObjectMapper
c.調用ObjectMapper的相關方法進行轉換

轉換方法:
 1.writeValue(參數1,obj)
 參數1:
File:將obj對象轉換爲json字符串,並保存到指定的文件中
Writer:將obj對象轉換爲json字符串,並將json數據填充到字符輸出流中
OutputStream:將obj對象轉換爲Json字符串,並將json數據填充到字節輸出流中
2.writeValueAsString(obj):將對象轉爲json字符串

示例

//java對象轉爲json字符串
    @Test
    public void test1() throws IOException {
        //1、創建person對象
        Person p = new Person();
        p.setName("張三");
        p.setAge(23);
        p.setGender("男");
        //創建jackson的核心對象,ObjectMapper
        ObjectMapper mapper = new ObjectMapper();
        //3.轉換
        String json = mapper.writeValueAsString(p);
        System.out.println(json);
        //將數據寫到d盤文件中
        //mapper.writeValue(new File("D://a.txt"),p);
        //將數據關聯到writer中
        mapper.writeValue(new FileWriter("d://b/.txt"),p);
    }

(2)細節:
1.@JsonIgnore:排除屬性在這裏插入圖片描述
在這裏插入圖片描述
2.@JsonFormat:屬性值的格式化
在這裏插入圖片描述
在這裏插入圖片描述
(3)複雜java對象轉換
1.List:數組
在這裏插入圖片描述
2.Map:與對象格式一致
在這裏插入圖片描述
案例
需求:校驗用戶名是否存在
在這裏插入圖片描述
注意:
1.服務器響應的數據,在客戶端 使用時,要想當做json數據格式使用
(1)$.get(type):將最後一個參數type指定爲json
(2)在服務器端設置MIME類型

response.setContentType("application/json;charset=utf-8");
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章