Java 将JackSon for JSON视图与Spring 2.5集成

Java 将JackSon for JSON视图与Spring 2.5集成,java,performance,spring,jackson,spring-json,Java,Performance,Spring,Jackson,Spring Json,我们使用Spring2.5和SpringJSON来支持json。我们在views.xml中有以下配置 <bean name="jsonView" class="org.springframework.web.servlet.view.json.JsonView"/> 现在,我们了解到Spring3.x在内部使用JacksonAPI来支持JSON。我的问题是,我们如何覆盖Spring2.5的默认实现来使用JackSon——Spring3.x的开始方式 注意:我们不想迁移我的Spr

我们使用Spring2.5和SpringJSON来支持json。我们在views.xml中有以下配置

<bean name="jsonView" class="org.springframework.web.servlet.view.json.JsonView"/>

现在,我们了解到Spring3.x在内部使用JacksonAPI来支持JSON。我的问题是,我们如何覆盖Spring2.5的默认实现来使用JackSon——Spring3.x的开始方式


注意:我们不想迁移我的Spring版本,但希望Spring 2.5使用此JackSon API而不是Spring Json

是否可以在不破坏Spring Json支持的情况下替换Spring的Json支持?

不幸的是,Spring自己的文档指出SpringJSON是现有Spring2.5框架的“深层次”组件

见:

也就是说,可以删除对SpringJSON的依赖,添加您自己的json解析器,并重建spring。考虑到SpringJSON是整个SpringMVC套件的主要组件,我认为这将需要大量的工作

另一种选择:建造立面

此外,我不知道有哪种Java EE规范针对Json库,这意味着所有内部Spring Json依赖项都很可能特定于Spring Json定义的API[例如,将其与Java EE一般定义的JPA进行比较,以便很容易替换许多DAO框架]

通常,您可以将任何类型的JSon库打包为Spring组件,该组件将在应用程序上下文中可用。现在-如果您使用facade模式,使用Jackson under the hood,重新实现必要的接口,那么您的Spring 2.5版本应该也能工作。或者,您可以使用Spring的面向方面的注入库拦截感兴趣的Json相关调用,并根据需要重新路由它们

然而,这些都是高级任务——它们将是优秀的学习项目,但我不确定如果这是一个生产应用程序,时间投入是否真的会有回报


如果JsonView可以工作,为什么你会关心Jackson是否被使用?我知道Spring已经在3.x中迁移到Jackson,因为它更快更好。我们有严重的速度问题和绝望,使应用程序快!您是否有证据表明
JsonView
是您的性能问题的原因?如果
JsonView
不是您的瓶颈,那么使用Jackson将无助于您的应用程序性能。你需要先确定什么是慢的,然后再尝试让它变快。哈!这不是JsonView成为瓶颈的问题。与以前的版本相比,Spring with JackSon view的速度有多快?我不知道Json库的任何Java EE规范,仅供将来参考,因为本月有: