一、Spring的注解配置和xml配置

tu_3.png

二、Spring注解

1、@Component注解 相当于,同时需要在applicationContext.xml中加入context的命名空间 扫描包名下的所有类,创建带有@Component的类的Bean到容器中。
web中三个衍生注解:@Controller 修饰web层类 action|SpringMVC
@Service 修饰业务层类 service
@Reposi 修饰DAO层类 dao

2、@Scope注解 singleton单例(默认) prototype 多例,这个注解用来描述类的作用范围 相当于
3、@PostConstrut 相当于,设置spring框架初始化此类实例时调用的初始化方法,标注在此类的初始化方法上
@PreDestroy 相当于, 设置spring框架销毁此类实例时调用的销毁方法,标注在此类的销毁方法上
4、@value 注入基本数据类型和String类型
value
private String name;
5、@autowired
自动按照类型注入。当使用注解注入属性时,set方法可以省略。他只能注入其他Bean类型。

6、@Qualifier
在自动按照类型注入的基础上,再按照Bean的id注入。必须和@autowired一起使用。给方法参数注入时,可独立使用
7、@Resource 如果一个接口有多种实现,需要指定具体某一实现,可以使用
Resource
private AccountDao accountDao;(某一接口)
8、@Configuration
用于指定当前类是一个spring配置类,当创建容器时会从该类上加载注解。
value 用于指定配置类的字节码
9、@ComponentScan 用于指定spring在初始化容器时要扫描的包,basePackages 用于指定要扫描的包
10、@bean 只能写在方法上,表明用此方法创建一个对象,放入spring容器,name 给当前@bean注解方法创 建的对象指定一个名称(bean的id)
11、@import导入其他配置类,
12、@PropertySource 用于加载 .properties文件中的配置, value 用于指定properties文件位置。如果在类路径下,需写上classpath:
13、当咱们需要在某个类中定义一个属性,并且该属性是一个已存在的 bean,在为该属性赋值或注入的时候,就需要在该属性的上一行添加一个 @Resource 注解
@Service,用于标注业务层组件(通常定义的 Service 层就用这个注解);
@Controller,用于标注控制层组件(如 Struts 中的 action);
@Repository,用于标注数据访问组件,即 DAO 层组件;
@Component,泛指组件,当组件不好归类的时候,咱们就可以用这个注解进行标注

二、springboot 需要特别注意版本问题