【核心核心】5.Spring【DI】注解方式

本文介绍了Spring框架中依赖注入的多种方式,包括@Value、@Autowired、@Qualifier及@Resource等注解的使用方法,并解释了如何通过@Scope定义Bean的作用范围及利用@PostConstruct与@PreDestroy注解来管理Bean的生命周期。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

使用注解的方式依赖注入不用提供set方法

1.普通类型的注解

@Value

@Value(value="春天")
private String name;

 

2.对象类型的注解

@Autowired --默认按类型自动装配

public interface UserDao {
    public void saveUser();
}
@Repository(value="userDao")
public class UserDaoImpl implements UserDao {

    @Override
    public void saveUser() {
        System.out.println("持久层:保存客户..");
    }
}
@Autowired
private UserDao userDao;

----------------------------------------------------------------------------------------------------------

@Qualifier --强制使用名称注入,但是必须和@Autowired一起使用

@Autowired
@Qualifier(value="userDao")
private UserDao userDao;

----------------------------------------------------------------------------------------------------------

@Resource --相当于@Autowired和@Qualifier一起使用

注意:

1.@Resource是Java提供的注解

2.属性使用name属性

@Resource(name="userDao")
private UserDao userDao;

 

Bean的作用范围和周期注解

1.作用范围注解--@scope

 

@Scope(value="prototype")作用在类上。值如下:
        * singleton     -- 单例,默认值
        * prototype     -- 多例

 

2.生命周期注解

@PostConstruct -- 相当于init-method

    @PostConstruct
    @Override
    public void start() {
        System.out.println("初始化持久层....");
    }

---------------------------------

@PreDestroy -- 相当于destroy-method

    @PreDestroy
    @Override
    public void end() {
        System.out.println("销毁持久层....");
    }

转载于:https://www.cnblogs.com/NEWHOM/p/6801782.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值