Spring注解
Spring是轻代码重配置的框架,配置比较繁琐,随着项目的扩大,配置会变得非常臃肿,影响开发效率。为了解决这个问题,注解开发成为一种趋势,注解代替XML配置文件可以简化配置,提高开发效率。
1.Spring原始注解
目的: 代替Spring的<Bean>
的配置
注解 | 说明 |
---|---|
@Component | 使用在类上用于实例化Bean |
@Controller | 使用在Web层类上用于实例化Bean(SpringMVC中会讲到) |
@Service | 使用在Service层类上用于实例化Bean |
@Repository | 使用在Dao层类上用于实例化Bean |
@Autowired | 使用在字段上用于根据类型依赖注入 |
@Qualifier | 结合@Autowired一起使用用于根据名称进行依赖注入 |
@Resource | 相当于@Autowired+@Qualifier,按照名称进行注入 |
@Value | 注入普通属性 |
@Scope | 标注Bean的作用范围 |
@PostConstruct | 使用在方法上标注该方法是Bean的初始化方法 |
@PreDestroy | 使用在方法上标注该方法是Bean的销毁方法 |
@Transactional | 在需要进行事务控制的类或是方法上开启事务 |
2.Spring后续版本新增注解如下:
注解 | 说明 |
---|---|
@Configuration | 用于指定当前类是一个 Spring配置类,当创建容器时会从该类上加载注解 |
@ComponentScan | 用于指定Spring在初始化容器时要扫描的包。作用和在Spring的xml配置文件中的<context:component-scan base-package=“com.qfedu” />一样。 |
@Bean | 使用在方法上,将该方法的返回值存储到Spring容器中,通常用于管理第三方类(不是自己定义的类)的bean |
@PropertySource | 用于加载.properties文件中的配置 |
@Import | 用于导入其他配置类 |
@MapperScan | 扫描特定包下的mapper |
@EnableTransactionManagement | 配置事务的注解驱动 |