如何在gvnix中将列表对象转换为JSON

时间:2015-01-30 10:43:31

标签: json spring-mvc spring-roo gvnix

您好我正在开发基于GVNIX开发工具的新控制器,但我不明白它是如何将对象列表转换为JSON。

我在GEO示例中看到,实体列表正在使用DataTables,而ajax过滤器正在使用JSON。数据库访问是在BatchService中返回对象列表,但我还没有找到控制器获取此列表的位置并返回JSON。

有人可以帮我理解它是如何工作的吗?

由于

1 个答案:

答案 0 :(得分:3)

转换由Spring Web MVC根据@RequestMapping@ResponseBody注释值通过Jaskson Library处理。 (This post谈论它)

此外,由于标准 Spring MVC Jackson 转换器不使用ApplicationConversionService Bean,gvNIX包含一个自定义转换器,它使用此bean来序列化并绑定某个对象(如标准POST请求中的Spring所做) )。您可以在webmvc-config.xml文件中找到此配置:

<bean class="org.gvnix.web.json.Jackson2RequestMappingHandlerAdapter" 
    id="dataBinderRequestMappingHandlerAdapter" p:order="1">
        <property name="objectMapper">
            <bean class="org.gvnix.web.json.ConversionServiceObjectMapper"/>
        </property>
</bean>

注意Jackson2RequestMappingHandlerAdapter仅处理@RequestMapping推荐producesconsumes设置为application/json的请求

祝你好运!