spring-mvc-showcase 学习之 message-converters

时间:2024-05-20 09:53:25

需求:

当请求HEADER包含 Accept:application/json或者url 以.json结束时,响应需将javaBean转为json,响应头为 Content-Type:application/json;charset=UTF-8

请求:

spring-mvc-showcase 学习之 message-converters

后台响应方法:

spring-mvc-showcase 学习之 message-converters

很明显响应方法返回的为一个对象,但为什么最终浏览器接收到是json呢?

这是框架的神奇之处,框架帮助你完成对象转json的任务。

spring 框架使用  message-converters 来完成这个转换,使得最终响应给浏览器的是json。

接下来message-converters 又有什么神奇之处呢。

1:默认情况下message-converters 是调用 Jackson 来完成对象转json的工作。

spring-mvc-showcase 学习之 message-converters

spring-mvc-showcase 学习之 message-converters

2: fastjson 貌似是比 jackson 更好的选择,下面配置将会使得message-converters 是调用 fastjson 来完成对象转json的工作。

spring-mvc-showcase 学习之 message-converters

spring-mvc-showcase 学习之 message-converters

spring-mvc-showcase 学习之 message-converters

3: 灵活性。

通过简单的配置即使得fastjson替换掉Jackjson。

当然有天如果你发现比fastjson更强大的工具也可以随时将fastjson替换掉而不影响任何你写过的代码。

4: 总结

可能你知道spring的核心是Ioc,但也许你不知道这个配置是Ioc的具体应用!!!

5: 疑问

为什么fastjson 能替换Jackson ,又是如何超越的,背后的开发者又有什么样的故事!

 

 

 

 

 

 

 

 

转载于:https://my.oschina.net/qidis/blog/845353