SpringBoot 返回Json

其实 想让springboot返回json很简单  只要在controller中直接返回对象即可 

如果返回的是List 则会返回一个json数组  

因为 springboot内置了jackson 对象会被jackson解析成为json字串进行返回  

那么这里 我就说一下 如何用性能更高的fastjson来解析返回值


1 首先 我们必须先引入fastJson的相关jar包 

	<dependency>
	    <groupId>com.alibaba</groupId>
	    <artifactId>fastjson</artifactId>
	    <version>${fastJson.version}</version>
	</dependency>
2 需要注入一个bean , 我们创建一个Config的类   添加注解 @Configuration

然后创建方法 

@Bean
	public HttpMessageConverters fastJsonMessageConverters(){
		FastJsonHttpMessageConverter fastConverter=new FastJsonHttpMessageConverter();
		FastJsonConfig config=new FastJsonConfig();
		config.setSerializerFeatures(SerializerFeature.PrettyFormat);
		fastConverter.setFastJsonConfig(config);
		HttpMessageConverter converter=fastConverter;
		return new HttpMessageConverters(converter);
	}


其实添加了@bean注解 就和 spring注入bean是一个道理   ,写好之后我们运行来看 


第一个是日期类型有问题   第二个是中文乱码了  

我们修改一下  

FastJsonHttpMessageConverter fastConverter=new FastJsonHttpMessageConverter();
		FastJsonConfig config=new FastJsonConfig();
		config.setSerializerFeatures(SerializerFeature.PrettyFormat);
		//配置日期类型  
		config.setDateFormat("yyyy/MM/dd HH:mm:ss");
		//解决中文乱码 
		List<MediaType> fastMediaTypes = new ArrayList<>();
	    fastMediaTypes.add(MediaType.APPLICATION_JSON_UTF8);
		fastConverter.setSupportedMediaTypes(fastMediaTypes);
		fastConverter.setFastJsonConfig(config);
		HttpMessageConverter converter=fastConverter;
		return new HttpMessageConverters(converter);


接下来我们再来看  




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值