Spring jackson原理及基本使用方法詳解
導(dǎo)入maven依賴
<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind --> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.11.2</version> </dependency>
1、java對象轉(zhuǎn)json
@Test
public void test01() throws JsonProcessingException {
//創(chuàng)建User對象
User user=new User("admin","1111");
//將user轉(zhuǎn)為json格式
ObjectMapper objectMapper=new ObjectMapper();
String userString=objectMapper.writeValueAsString(user);
System.out.println(userString);
}
2、writeValue(參數(shù)1,obj)方法介紹
參數(shù)1
- File:將obj對象轉(zhuǎn)換為json字符串,并保存到指定的文件中
- writer:將obj對象轉(zhuǎn)換為json字符串,并將json數(shù)據(jù)填充到字符輸出流中
- Outputstream:將obj對象轉(zhuǎn)換為json字符串,并將json數(shù)據(jù)填充到字節(jié)輸出流中
3、注解介紹
- @JsonIgnore:排除屬性,即當(dāng)前注解屬性不轉(zhuǎn)化json
- @JsonFormat:屬性值的格式化
常用在日期屬性上,eg:@sonFormat(pattern = "yyyy-MM-dd")
4、json轉(zhuǎn)java對象
@Test
public void test02() throws JsonProcessingException {
//創(chuàng)建json對象
String json="{\"username\":\"admin\",\"password\":\"1111\"}";
//將json對象轉(zhuǎn)為java對象
ObjectMapper objectMapper=new ObjectMapper();
User user=objectMapper.readValue(json,User.class);
System.out.println(user);
}
5、集合轉(zhuǎn)json
@Test
public void test03() throws JsonProcessingException {
//創(chuàng)建User對象
User user=new User("admin","1111");
//存儲User對象
List<User> userList=new ArrayList<User>();
userList.add(user);
userList.add(user);
userList.add(user);
//集合轉(zhuǎn)json
ObjectMapper objectMapper=new ObjectMapper();
String listJson=objectMapper.writeValueAsString(userList);
System.out.println(listJson);
}
注:map集合的轉(zhuǎn)換和list是一樣的
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- springboot項目中jackson-序列化-處理 NULL教程
- 詳解springboot之jackson的兩種配置方式
- SpringBoot2.0整合jackson配置日期格式化和反序列化的實現(xiàn)
- Spring boot中Jackson的操作指南
- java jackson 將對象轉(zhuǎn)json時,忽略子對象的某個屬性操作
- 基于Spring Web Jackson對RequestBody反序列化失敗的解決
- 解決Jackson反序列化map,set等復(fù)雜類型問題
- jackson解析json字符串,首字母大寫會自動轉(zhuǎn)為小寫的方法
- Springboot中如何使用Jackson
相關(guān)文章
關(guān)于java中基本數(shù)據(jù)類型的數(shù)值范圍
這篇文章主要介紹了關(guān)于java中基本數(shù)據(jù)類型的數(shù)值范圍,基本類型,或者叫做內(nèi)置類型,是JAVA中不同于類的特殊類型,它們是我們編程中使用最頻繁的類型,需要的朋友可以參考下2023-07-07
springboot搭建訪客管理系統(tǒng)的實現(xiàn)示例
這篇文章主要介紹了springboot搭建訪客管理系統(tǒng)的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-01-01
Mybatis操作數(shù)據(jù)時出現(xiàn):java.sql.SQLSyntaxErrorException:?Unknown?c
這篇文章主要介紹了Mybatis操作數(shù)據(jù)時出現(xiàn):java.sql.SQLSyntaxErrorException:?Unknown?column?'XXX'?in?'field?list',需要的朋友可以參考下2023-04-04
springboot Interceptor攔截器excludePathPatterns忽略失效
這篇文章主要介紹了springboot Interceptor攔截器excludePathPatterns忽略失效的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-07-07
java實現(xiàn)遠(yuǎn)程連接執(zhí)行命令行與上傳下載文件
這篇文章主要介紹了java實現(xiàn)遠(yuǎn)程連接執(zhí)行命令行與上傳下載文件方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-05-05
java中l(wèi)ambda表達(dá)式的分析與具體用法
這篇文章主要給大家介紹了關(guān)于java中l(wèi)ambda表達(dá)式具體用法的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-04-04
教你使用Java獲取當(dāng)前時間戳的詳細(xì)代碼
這篇文章主要介紹了如何使用Java獲取當(dāng)前時間戳,通過兩個java示例,向大家展示如何獲取java中的當(dāng)前時間戳,文本通過示例代碼給大家展示了java獲取當(dāng)前時間戳的方法,需要的朋友可以參考下2022-01-01

