Spring中新注解
在之前的操作我们发现不管怎么样子,我们依然离不开 spring 的 xml 配
置文件,那么能不能不写这个 bean.xml,所有配置都用注解来实现呢?
下面就介绍几个Spring里面的新注解
分析前面的操作无非就是把之前xml里面的东西用注解来实现。
@Configuration
用于指定当前类是一个 spring 配置类,
以前的原生spring,想要将组件添加到容器中
1.需要在resources目录下创建一个xml配置文件
2.创建bean标签
现在只用**@Configuration**是通过注解的方式将 bean 注入到spring IOC容器。
@ComponentScan
用于指定 spring 在初始化容器时要扫描的包。 作用和在 spring 的 xml 配置文件中的:component-scan base-package=“com”/>是一样的。
属性:
basePackages:用于指定要扫描的包。和该注解中的 value 属性作用一样。用于指定要创建的包
@Bean
作用:用于把当前方法的返回值作为bean对象存入spring的ioc容器中
属性:
name:用于指定bean的id,当不写时,默认值是当前方法的名称
细节:
当我们使用注解配置方法时,如果方法有参数,spring框架会去容器中查找有没有可用的bean对象,查找的方式和Autowired注解的作用是一样的
@PropertySource
用于加载.properties 文件中的配置。例如我们配置数据源时,可以把连接数据库的信息写到properties 配置文件中,就可以使用此注解指定 properties 配置文件的位置。
属性:
value[]:用于指定 properties 文件位置。如果是在类路径下,需要写上 classpath:
@Import
作用:
用于导入其他配置类,在引入其他配置类时,可以不用再写@Configuration 注解。 当然,写上也没问题。
属性:
value[]:用于指定其他配置类的字节码。