Java 即使使用MappingJackson2HttpMessageConverter,是否也需要@ResponseBy?
我在读这篇文章,我发现在Spring 4中,Java 即使使用MappingJackson2HttpMessageConverter,是否也需要@ResponseBy?,java,spring,web-services,jackson,Java,Spring,Web Services,Jackson,我在读这篇文章,我发现在Spring 4中,@RestController是@ResponseBody和@Controller的组合,因此没有必要像以前那样在每个方法中都提到@ResponseBody。但是,在我正在开发的一个应用程序中,我们使用的是Spring3.x,我们开发了SpringWebServices,并将控制器类注释为@Controller。示例控制器如下所示: @Controller public class SomeController { @RequestMapping(v
@RestController
是@ResponseBody
和@Controller
的组合,因此没有必要像以前那样在每个方法中都提到@ResponseBody
。但是,在我正在开发的一个应用程序中,我们使用的是Spring3.x,我们开发了SpringWebServices,并将控制器类注释为@Controller
。示例控制器如下所示:
@Controller
public class SomeController {
@RequestMapping(value = "uri/{values}", method = RequestMethod.GET)
public List<SampleClassPOJO> giveSomething(@PathVariable("values") String some){
//logic
return listOfSampleClassPOJO;
}
//Other services
}
@控制器
公共类控制器{
@RequestMapping(value=“uri/{values}”,method=RequestMethod.GET)
public List giveSomething(@PathVariable(“value”)字符串some){
//逻辑
SampleClassPojo的返回列表;
}
//其他服务
}
并在dispatcher servlet xml中具有以下配置:
<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter">
<property name="messageConverters">
<list>
<bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
<property name="prettyPrint" value="false"/>
<property name="objectMapper">
<bean class="com.fasterxml.jackson.databind.ObjectMapper"/>
</property>
</bean>
</list>
</property>
</bean>
dispatcher servlet在web.xml中引用
<servlet>
<servlet-name>dispatch</servlet-name>
<servlet-class>someCustom.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dispatch</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
派遣
一些定制的DispatcherServlet
1.
派遣
/*
我们没有为任何web服务方法或类级别使用@ResponseBody
进行注释,但响应仍然是json。那么,什么时候需要@ResponseBody
注释
现在,这让我陷入了困惑的状态,我尝试在dispatcher-servlet.xml和中只使用上述条目搜索任何示例,而不在服务的方法中使用@ResponseBody
,但是没有这样的示例。我唯一发现的是,上面的条目以及Spring4中的@RestController
注释
谁能告诉我我在这里遗漏了什么信息
感谢您不用代码片段,而是添加配置和代码以获得完整的图片。另外,您确切使用的是哪一个Spring 3.x版本,您是否还有一个
,以及在哪个配置文件中配置此RequestMappingHandlerAdapter
。这里有很多移动组件,这取决于您使用什么和配置的结果可能不同。因此,目前信息太少,无法回答您的问题。我提到的上述xml片段位于dispatcher-servlet.xml中,并已在web.xml中配置。还有什么需要的吗?还有待解决。。。我也没有提到
,但我提到了
。将web.xml和dispatcherservlet.xml
添加到问题中。如前所述,完整的图片不仅需要片段。最近的编辑是否更好?稍微好一点,但我仍然不知道配置了什么,因为您没有显示完整的配置。由于其他一些配置设置,您发布的定义可能毫无价值。添加配置和代码以获得完整的图片,而不是代码片段。另外,您确切使用的是哪一个Spring 3.x版本,您是否还有一个
,以及在哪个配置文件中配置此RequestMappingHandlerAdapter
。这里有很多移动组件,这取决于您使用什么和配置的结果可能不同。因此,目前信息太少,无法回答您的问题。我提到的上述xml片段位于dispatcher-servlet.xml中,并已在web.xml中配置。还有什么需要的吗?还有待解决。。。我也没有提到
,但我提到了
。将web.xml和dispatcherservlet.xml
添加到问题中。如前所述,完整的图片不仅需要片段。最近的编辑是否更好?稍微好一点,但我仍然不知道配置了什么,因为您没有显示完整的配置。由于其他一些配置设置,您发布的定义可能毫无价值。