您好我正在开发基于GVNIX开发工具的新控制器,但我不明白它是如何将对象列表转换为JSON。
我在GEO示例中看到,实体列表正在使用DataTables,而ajax过滤器正在使用JSON。数据库访问是在BatchService中返回对象列表,但我还没有找到控制器获取此列表的位置并返回JSON。
有人可以帮我理解它是如何工作的吗?
由于
答案 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
推荐produces
和consumes
设置为application/json
的请求