spring基于纯注解开发

spring基于纯注解开发

一,spring原始注解

spring原始注解主要是替代自定义<Bean>的配置

1.1使用在类上面

  1. @Component:使用在自定义类上用于实例化Bean

    @Component("userService")
    public class UserServiceImpl implements UserService{
        
    }
    
  2. @Controller:使用在web层类上用于实例化Bean,与Component相同

    @Controller("userController")
    public class UserControllerImpl implement UserController{
        
    }
    
  3. @Service:使用在service层类上用于实例化Bean,与Component相同

    @Service("userService")
    public class UserServiceImpl implement UserService{
        
    }
    
  4. @Repository:使用在dao层类上用于实例化Bean,与Component

    @Repositroy("userDao")
    public class UserDaoImpl implement UserDao{
        
    }
    
  5. @Scope:使用在类上面,标注Bean的作用范围

    @Scope("singleton")
    public class UserDaoImpl implement UserDao{
        
    }
    

1.2使用在成员变量上面

  1. @Autowired:按照数据类型从spring容器中注入,自动装配对象属性

    @Autowired
    private UserDao userDao;
    
  2. @Autowired

    @Qualifier(“id名”):按照id名从spring容器中注入,自动装配对象属性

    @Autowired
    @Qualifier("注入bean的id值")
    private UserDao userDao;
    
  3. @Resource:按照id名从spring容器中注入,自动装配对象属性

    @Resource(name="注入bean的id值")
    private UserDao userDao;
    
  4. @Value:注入普通属性,一般从加载的properties配置文件中通过spel从容器中取值

    以达到解耦的目的.

    @Value("${name}")
    private String name;
    

1.3使用在成员方法上面

  1. @PostConstruct:使用在方法上面标注该方法时Bean的初始方法

    @PostConstruct
    public void init(){
        System.out.println("该Bean的初始化方法");
    }
    
  2. @PreDestroy:使用在方法上面标注该方法时Bean的销毁方法

    @PreDestroy
    public void destroy(){
        System.out.println("该Bean的销毁方法");
    }
    

二,spring的新注解

spring新注解主要是来配置原始注解不能配置的标签

2.1使用在类上面

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

    @Configuration
    public class SpringConfiguration(){
        
    }
    
  2. @ComponentScan:用于指定Spring容器初始化时要扫描的包中的配置的组件.作用和在Spring核心配置文件中的标签 <context:component-scan base-package='包名' /> 一样

    @ComponentScan("包名")
    public class SpringConfiguration(){
        
    }
    
  3. @Import:用于导入其他配置类,可以导入多个

    @Import({DataSourceConfiguration.class})
    public class SpringConfiguration(){
        
    }
    
  4. @PropertySource:用于加载.properties配置文件到Spring容器当中,这里以放在resource目录下面的jdbc.properties文件路径为例.

    @PropertySource("classpath:jdbc.properties")
    public class DataSourceConfiguration(){
        
    }
    

2.2使用在方法上面

  1. @Bean:使用在方法上面,标注将该方法的返回值存储到Spring容器当中,这里就可以将非自定义的bean存入到Spring容器当中

    @Bean("connection")
    public Connection getConnection(){
        
    } 
    

三,总结

Spring基于注解开发

原始标签一共常用的是11个,可以完成

  1. 注入自定义bean(4个)
  2. 设置自定义bean的作用范围(1个)
  3. 设置自定义bean的初始方法(1个)
  4. 设置自定义bean的销毁方法(1个)
  5. 注入对象属性(3个)
  6. 注入普通属性(1个)

新标签一共常用的是5个,可以完成

  1. 标注一个自定义bean为核心配置类(1个)
  2. 扫描指定包名(1个)
  3. 导入其他配置类(1个)
  4. 加载.properties配置文件(1个)
  5. 将非自定义bean存储到Spring容器当中(1个)
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值