@Controller
标识的类,该类代表控制器类。
@ResponseBody
将Java对象转为json格式的数据。
@RestController
相当于@Controller+@ResponseBody两个注解的结合
1.如果只是使用@RestController注解Controller,则Controller中的方法无法返回警示牌页面,配置的视图解析器
例如:本来应该到success.jsp页面的,则其显示success.
2.如果需要返回到指定页面,则需要用 @Controller配合视图解析器InternalResourceViewResolver才行。
3.如果需要返回JSON,XML或自定义mediaType内容到页面,则需要在对应的方法上加上@ResponseBody注解。
相当于@Controller+@ResponseBody两个注解的结合,返回json数据不需要在方法前面加@ResponseBody注解了,但使用@RestController这个注解,就不能返回jsp,html页面,视图解析器无法解析jsp,html页面
@SpringBootApplication
用来标注一个主程序类,用来说明这是一个Spring Boot应用。
@Autowired 注释
它可以对类成员变量、方法及构造函数进行标注,完成自动装配的工作。 通过 @Autowired的使用来消除 set ,get方法。
@RequestMapping
用来处理请求地址映射的注解,可用于类或方法上。用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径。
@Component
把普通pojo实例化到spring容器中,相当于配置文件中的
@Component是一个元注解,意思是可以注解其他类注解,如@Controller @Service @Repository @Aspect。官方的原话是:带此注解的类看为组件,当使用基于注解的配置和类路径扫描的时候,这些类就会被实例化。其他类级别的注解也可以被认定为是一种特殊类型的组件,比如@Repository @Aspect。所以,@Component可以注解其他类注解。
@ConfigurationProperties
告诉SpringBoot将本类中的所有属性和配置文件中的相关配置进行绑定,默认从全局配置文件中获取。
@Validated
spring-boot中可以用@validated来校验数据,如果数据异常则会统一抛出异常,方便异常中心统一处理。
@PropertySource
加载指定的配置文件
@ImportResource
导入Spring的配置文件,让配置文件里面的内容生效。
@Configuration
指明当前类是一个配置类,就是来代替之前的配置文件。
@EnableWebMvc
@EnableWebMvc是使用Java 注解快捷配置Spring WebMVC的一个注解。在使用该注解后配置一个继承于WebMvcConfigurerAdapter的配置类即可配置好Spring WebMVC。
通过查看@EnableWebMvc的源码,可以发现该注解就是为了引入一个DelegatingWebMvcConfiguration Java 配置类。并翻看DelegatingWebMvcConfiguration的源码会发现该类似继承于WebMvcConfigurationSupport的类。
其实不使用@EnableWebMvc注解也是可以实现配置Webmvc,只需要将配置类继承于WebMvcConfigurationSupport类即可