SpringBoot整合Gson 整合Fastjson的实例详解

SpringBoot整合Gson 整合Fastjson

 一、SpringBoot整合Gson

1、pom依赖

# 在SpringBoot中给我们自带了json解析器,我们需要移除SpringBoot自带的jackson,在添加Gson依赖


 
  org.springframework.boot
  spring-boot-starter-web
  
  
   
    org.springframework.boot
    spring-boot-starter-json
   
  
 
 
 
  com.google.code.gson
  gson
 
 
  org.springframework.boot
  spring-boot-starter-test
  test
 

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 getUsers(){
  ArrayList 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

# 在之前的一篇博客中有介绍,大家不太明白可以先看一下上一篇博客,这次就不放测试的结果了!
# 在GsonHttpMessageConvertersConfiguration中含有GsonHttpMessageConverter
# 在GsonAutoConfiguration中含有Gson
# 我们可以分别写两个bean去实现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,不再做过多解释


 
  org.springframework.boot
  spring-boot-starter-web
  
  
   
    org.springframework.boot
    spring-boot-starter-json
   
  
 
 
 
  com.alibaba
  fastjson
  1.2.74
 
 
  org.springframework.boot
  spring-boot-starter-test
  test
 

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、测试(无问题)

到此这篇关于SpringBoot整合Gson 整合Fastjson的文章就介绍到这了,更多相关SpringBoot整合Gson 内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

你可能感兴趣的:(SpringBoot整合Gson 整合Fastjson的实例详解)