Spring Boot经常使用的注解

@SpringBootApplication:
包含@Configuration、@EnableAutoConfiguration、@ComponentScan
一般用在主类上。因为大量项目都会在主要的配置类上添加@Configuration,@EnableAutoConfiguration,@ComponentScan三个注解。spring

所以Spring Boot提供了@SpringBootApplication注解,该注解能够替代上面三个注解(使用Spring注解继承实现)。数据库

 

@Repository:
用于标注数据访问组件,即DAO组件。json

 

@Service:
用于标注业务层组件。app

 

@RestController:
用于标注控制层组件(如struts中的action),包含@Controller和@ResponseBody。框架

 

@ResponseBody:
表示该方法的返回结果直接写入HTTP response body中
通常在异步获取数据时使用,在使用@RequestMapping后,返回值一般解析为跳转路径,加上
@responsebody后返回结果不会被解析为跳转路径,而是直接写入HTTP response body中。好比
异步获取json数据,加上@responsebody后,会直接返回json数据。异步

 

@Component:
泛指组件,当组件很差归类的时候,咱们能够使用这个注解进行标注。函数

 

@ComponentScan:
组件扫描。我的理解至关于<context:component-scan>,若是扫描到有@Component 
@Controller@Service等这些注解的类,则把这些类注册为bean。ui

 

@Configuration:
指出该类是 Bean 配置的信息源,至关于XML中的<beans></beans>,通常加在主类上。code

 

@Bean:
至关于XML中的<bean></bean>,放在方法的上面,而不是类,意思是产生一个bean,并交给spring管理。

component

@EnableAutoConfiguration:
让 Spring Boot 根据应用所声明的依赖来对 Spring 框架进行自动配置,通常加在主类上。其做用:Spring Boot会自动根据你jar包的依赖来自动配置项目。例如当你项目下面有HSQLDB的依赖时,Spring Boot会建立默认的内存数据库的数据源DataSource,若是你本身建立了DataSource,Spring Boot就不会建立默认的DataSource


@AutoWired:
byType方式。把配置好的Bean拿来用,完成属性、方法的组装,它能够对类成员变量、方法及构
造函数进行标注,完成自动装配的工做。
当加上(required=false)时,就算找不到bean也不报错。

@Qualifier:当有多个同一类型的Bean时,能够用@Qualifier("name")来指定。与@Autowired配合使用@Resource(name="name",type="type"):没有括号内内容的话,默认byName。与@Autowired干相似的事。

相关文章
相关标签/搜索