Spring的注解开发-作用范围等注解的使用

  • 在上一篇文章中(文章传送门:Spring的注解开发-Bean基本注解开发_保持敬畏的博客-CSDN博客),我们使用@Component注解时,为目标类所创建的bean对象指定了名称,但是如果不指定名称,Spring会默认当前bean对象的名称是该类吗首字母小写所产生的名称,如果类名就是首字母小写,则默认bean对象名称就是类名。
  • 使用@Component注解代替标签
    •  标签属性 对应的注解
      id @Component(value = "id"),设置bean对象的名称
      lazy-init @Lazy,标注bean是否延迟加载,ture/false
      scope @Scope("scope"),标注bean的作用范围
      init-method @PostConstruct,在方法上使用,标注bean实例化后所执行的方法
      destroy-method @PreDestroy,在方法上使用,标注bean的销毁前zh
  • 示例代码如下
    •  
      package com.example.DAO.Impl;
      
      import com.example.DAO.UserDAO;
      import org.springframework.context.annotation.Lazy;
      import org.springframework.context.annotation.Scope;
      import org.springframework.stereotype.Component;
      
      import javax.annotation.PostConstruct;
      import javax.annotation.PreDestroy;
      
      @Component("userDAO")// 设置bean对象的名称
      @Scope("singleton")
      @Lazy(value = false)
      
      public class UserDAOImpl implements UserDAO {
          public UserDAOImpl() {
              System.out.println("userDAO创建......");
          }
      
          @PostConstruct
          public void init() {
              System.out.println("userDAo初始化方法");
          }
      
          @PreDestroy
          public void destroy() {
              System.out.println("userDAo销毁方法");
          }
      }
      

你可能感兴趣的:(Spring,5,spring,java,后端)