我正在阅读此https://spring.io/guides/gs/rest-service/,我发现在第4版中,@RestController
是@ResponseBody
和@Controller
的组合,因此没有必要提及@ResponseBody
{1}}就像以前一样。但是,在我正在使用的一个应用程序中,我们使用的是Spring 3.x,我们开发了spring webservices并将Controller类注释为@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
}
并在调度程序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>
调度程序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>
我们没有使用@ResponseBody
注释任何Web服务方法,也没有在类级别注释,但仍然是响应是json。那么,何时需要@ResponseBody
注释?
现在,这让我陷入困惑状态,我试图在dispatcher-servlet.xml中仅使用上述条目搜索任何示例,而在不使用@ResponseBody
的情况下搜索服务的方法,但没有例子。我发现的只有上面的条目以及Spring 4中的@RestController
注释。
有谁能告诉我这里缺少的信息是什么?
由于