传统MVC控制器与RESTful web服务控制器之间的一个关键区别是HTTP响应体的创建方式。这个rest式web服务控制器并不依赖于视图技术来将数据执行到HTML的服务器端呈现,而是简单地填充并返回一个对象。对象数据将直接以JSON的形式写入HTTP响应。
这段代码使用了Spring 4新的@RestController注释,该注释将该类标记为一个控制器,其中每个方法都返回一个域对象,而不是一个视图。它是@Controller和@ResponseBody的简写。
@SpringBootApplication是一个方便的注释,它添加了以下所有内容:
@Configuration:将类标记为应用程序上下文的bean定义源。@EnableAutoConfiguration:告诉Spring Boot根据类路径设置、其他bean和各种属性设置开始添加bean。例如,如果spring-webmvc位于类路径上,则该注释将应用程序标记为web应用程序并激活关键行为,例如设置DispatcherServlet。@ComponentScan:告诉Spring在包中查找其他组件、配置和服务,让它找到控制器。