SpringBoot整合Gson 整合Fastjson的實例詳解
SpringBoot整合Gson 整合Fastjson
一、SpringBoot整合Gson
1、pom依賴
# 在SpringBoot中給我們自帶了json解析器,我們需要移除SpringBoot自帶的jackson,在添加Gson依賴
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<!--移除jackson依賴-->
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-json</artifactId>
</exclusion>
</exclusions>
</dependency>
<!--添加Gson依賴-->
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
2、User實體
/**
* @Create_Author msfh
* @Create_Date 2020-11-25 15:54:15
* @Description User實體
*/
public class User {
private Integer id;
private String name;
private Date birthday;
@Override
public String toString() {
return "User{" +
"id=" + id +
", name='" + name + '\'' +
", birthday=" + birthday +
'}';
}
/**省略set&get**/
}
3、UserController
/**
* @Create_Author msfh
* @Create_Date 2020-11-25 15:55:15
* @Description UserController控制器
*/
@RestController
public class UserController {
@GetMapping("/user")
public List<User> getUsers(){
ArrayList<User> users = new ArrayList<>();
for (int i = 0; i < 10; i++) {
User user = new User();
user.setId(i);
user.setName("msfh-->"+i);
user.setBirthday(new Date());
users.add(user);
}
return users;
}
}
4、WebMvcConfig
# 在之前的一篇博客中有介紹,大家不太明白可以先看一下上一篇博客,這次就不放測試的結(jié)果了! # 在GsonHttpMessageConvertersConfiguration中含有GsonHttpMessageConverter # 在GsonAutoConfiguration中含有Gson # 我們可以分別寫兩個bean去實現(xiàn)gson的配置(GsonHttpMessageConverter或Gson) # 建議大家沒事的話,可以看下源碼
/**
* @Create_Author msfh
* @Create_Date 2020-11-25 16:05:56
* @Description WebMvcConfig配置類
*/
@Configuration
public class WebMvcConfig {
//@Bean
//GsonHttpMessageConverter gsonHttpMessageConverter(){
// GsonHttpMessageConverter converter = new GsonHttpMessageConverter();
// converter.setGson(new GsonBuilder().setDateFormat("yyyy-MM-dd").create());
// return converter;
//}
@Bean
Gson gson(){
return new GsonBuilder().setDateFormat("yyyy-MM-dd").create();
}
}
二、SpringBoot整合FastJson
1、pom依賴
# 這個沒什么好說的,還是移除自帶的Jackson,添加fastjson,不再做過多解釋
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<!--移除jackson依賴-->
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-json</artifactId>
</exclusion>
</exclusions>
</dependency>
<!--添加fastjson依賴-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.74</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
2、User實體(上邊代碼)
3、UserController(上邊代碼)
4、WebMvcConfig
# 在fastjson中稍微和之前兩種不一致
# 在FastJsonHttpMessageConverter找到FastJsonConfig看一下
/**
* @Create_Author msfh
* @Create_Date 2020-11-25 16:05:56
* @Description WebMvcConfig配置類
*/
@Configuration
public class WebMvcConfig {
@Bean
FastJsonHttpMessageConverter fastJsonHttpMessageConverter(){
FastJsonHttpMessageConverter converter = new FastJsonHttpMessageConverter();
FastJsonConfig config = new FastJsonConfig();
config.setDateFormat("yyyy/MM/dd");
converter.setFastJsonConfig(config);
return converter;
}
}
5、測試(無問題)
到此這篇關(guān)于SpringBoot整合Gson 整合Fastjson的文章就介紹到這了,更多相關(guān)SpringBoot整合Gson 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- springboot中使用FastJson解決long類型在js中失去精度的問題
- SpringBoot如何使用Fastjson解析Json數(shù)據(jù)
- springboot中用fastjson處理返回值為null的屬性值
- 使用SpringBoot+OkHttp+fastjson實現(xiàn)Github的OAuth第三方登錄
- SpringBoot整合FastJson過程解析
- SpringBoot Redis配置Fastjson進(jìn)行序列化和反序列化實現(xiàn)
- springboot實現(xiàn)FastJson解析json數(shù)據(jù)的方法
- Spring Boot使用FastJson解析JSON數(shù)據(jù)的方法
- Spring?boot詳解fastjson過濾字段為null值如何解決
相關(guān)文章
Eureka源碼閱讀解析Server服務(wù)端啟動流程實例
這篇文章主要為大家介紹了Eureka源碼閱讀解析Server服務(wù)端啟動流程實例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-10-10
spring cloud服務(wù)之間的調(diào)用之ribbon詳解
關(guān)于spring-cloud的服務(wù)調(diào)用,我們首先需要了解它的兩個核心組件Ribbon和Feign。接下來通過本文給大家詳細(xì)介紹spring-cloud服務(wù)之間的調(diào)用之ribbon,感興趣的朋友一起看看吧2021-08-08
JMeter連接Mysql數(shù)據(jù)庫的實現(xiàn)步驟
本文主要介紹了JMeter操作Mysql數(shù)據(jù)庫,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-12-12
Java?synchronized底層實現(xiàn)原理以及鎖優(yōu)化
Synchronized是Java中解決并發(fā)問題的一種最常用的方法,也是最簡單的一種方法,下面這篇文章主要給大家介紹了關(guān)于Java?synchronized底層實現(xiàn)原理以及鎖優(yōu)化的相關(guān)資料,需要的朋友可以參考下2022-02-02
RestTemplate在Spring或非Spring環(huán)境下使用精講
這篇文章主要為大家介紹了RestTemplate在Spring或非Spring環(huán)境下使用精講,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-03-03
jdbc+jsp實現(xiàn)簡單員工管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了jdbc+jsp實現(xiàn)簡單員工管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-02-02

