需求:
当请求HEADER包含 Accept:application/json或者url 以.json结束时,响应需将javaBean转为json,响应头为 Content-Type:application/json;charset=UTF-8
请求:
后台响应方法:
很明显响应方法返回的为一个对象,但为什么最终浏览器接收到是json呢?
这是框架的神奇之处,框架帮助你完成对象转json的任务。
spring 框架使用 message-converters 来完成这个转换,使得最终响应给浏览器的是json。
接下来message-converters 又有什么神奇之处呢。
1:默认情况下message-converters 是调用 Jackson 来完成对象转json的工作。
2: fastjson 貌似是比 jackson 更好的选择,下面配置将会使得message-converters 是调用 fastjson 来完成对象转json的工作。
3: 灵活性。
通过简单的配置即使得fastjson替换掉Jackjson。
当然有天如果你发现比fastjson更强大的工具也可以随时将fastjson替换掉而不影响任何你写过的代码。
4: 总结
可能你知道spring的核心是Ioc,但也许你不知道这个配置是Ioc的具体应用!!!
5: 疑问
为什么fastjson 能替换Jackson ,又是如何超越的,背后的开发者又有什么样的故事!
转载于:https://my.oschina.net/qidis/blog/845353