上QQ阅读APP看书,第一时间看更新
How it works...
The key to getting the service exposed to web requests is the @RestController annotation. This is yet another example of a meta-annotation or a convenience annotation, as the Spring documentation refers to it at times, which we have seen in previous recipes. In @RestController, two annotations are defined: @Controller and @ResponseBody. So we could just as easily annotate BookController, as follows:
@Controller @ResponseBody @RequestMapping("/books") public class BookController {...}
Let's take a look at the following annotations from the preceding code snippet:
- @Controller: This is a Spring stereotype annotation that is similar to @Bean and @Repository and declares the annotated class as an MVC
- @ResponseBody: This is a Spring MVC annotation indicating that responses from the web-request-mapped methods constitute the entire content of the HTTP response body payload, which is typical for the RESTful applications
- @RequestMapping: This is a Spring MVC annotation indicating that requests to /books/* URL will be routed to this controller.