Spring注解开发


一、配置命名空间

<?xml version="1.0" encoding="UTF-8"?>
xmlns:context="http://www.springframework.org/schema/context"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
                            http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">  
    

  
 

二、注解(必须配置组件扫描)

@Component:使用在类上用于实例化Bean    等价于  

@Autowired :使用在字段上用于根据类型依赖注入  (如果不加@Qualifier)

@Qualifier: 结合@Autowired一起使用用于根据名称进行依赖注入  (按照名称注入)

等价于


     

@Resource : 相当于@Autowired+@Qualifier,按照名称进行注入  @Resource(name = "userDao")

@Controller : 使用在web层类上用于实例化Bean  和 @Component 一样

@Service : 使用在service层类上用于实例化Bean 和 @Component 一样

@Repository : 使用在dao层类上用于实例化Bean 和 @Component 一样

@Value : 注入普通属性  可以用来获取容器中的key值

@Scope : 标注Bean的作用范围 

@PostConstruct:使用在方法上标注该方法是Bean的初始化方法  等价于 init-method

@PreDestroy : 使用在方法上标注该方法是Bean的销毁方法 等价于  destroy-method

新注解: 

@Configuration : 用于指定当前类是一个 Spring 配置类,当创建容器时会从该类上加载注解 

@ComponentScan : 用于指定 Spring 在初始化容器时要扫描的包。等价于 

@Bean : 使用在方法上,标注将该方法的返回值存储到 Spring 容器中 

@PropertySource  : 用于加载.properties 文件中的配置

@Import : 用于导入其他配置类