@Inject 标记在setter方法上的作用

简介: @Inject 标记在setter方法上的作用

@Inject注解是JavaEE 6标准的依赖注入(Dependency Injection)注解,和@Autowired注解类似。当@Inject注解标记在setter方法上时,它表示使用依赖注入方式将指定的Bean对象注入到setter方法中对应的属性中。

例如,我们定义了一个UserService接口和其实现类,代码如下:

public interface UserService {
void setUserDao(UserDao userDao)
}

@Service
public class UserServiceImpl implements UserService {
private UserDao userDao;

@Override
public void setUserDao(UserDao userDao){
    this.userDao = userDao;
}

}
在上面的代码中,UserServiceImpl类实现了UserService接口,它的setter方法setUserDao()使用了@Inject注解,它表示将UserDao对象注入到UserServiceImpl类中的userDao属性中。

当Spring容器启动时,它会自动扫描UserServiceImpl类,并初始化其实例。此时,Spring容器会查找容器中所有实现UserDao接口的Bean对象,并自动注入到UserServiceImpl对象的userDao属性中。这样,在其他组件中调用UserService接口的方法时,就可以通过userDao属性来访问和操作数据库,实现业务逻辑的处理。

相关文章
|
10月前
|
Python
使用 RaiseExceptionMeta 元类隐式装饰 Validator 类中的所有校验方法
使用 RaiseExceptionMeta 元类隐式装饰 Validator 类中的所有校验方法
65 0
|
10月前
|
Java Spring 容器
面试题:在spring框架下面,Bean的属性lazy-init有什么作用,默认值是多少
面试题:在spring框架下面,Bean的属性lazy-init有什么作用,默认值是多少
94 0
|
10月前
|
C++
c++将一个类的回调函数注入到另一个类中的方法
c++将一个类的回调函数注入到另一个类中的方法
|
10月前
|
XML Java 数据格式
怎么通过通过 p 名称空间配置 bean以及怎么去引用/注入其它 bean 对象--ref和怎么去引用/注入内部 bean 对象-内部 bean 对象
怎么通过通过 p 名称空间配置 bean以及怎么去引用/注入其它 bean 对象--ref和怎么去引用/注入内部 bean 对象-内部 bean 对象
112 0
|
Java Spring 容器
@Inject 标记在构造方法上的作用
@Inject 标记在构造方法上的作用
Zp
|
XML Java 数据格式
@Component注解的作用
@Component注解的作用
Zp
338 0
@Component注解的作用
lodash判断对象的直接或继承属性是否存在
lodash判断对象的直接或继承属性是否存在
200 0
|
Java Spring
构造方法注入和设值注入有什么区别?
构造方法注入和设值注入有什么区别?
构造方法注入和设值注入有什么区别?
|
安全 Java
注解和反射12.动态创建对象执行方法
注解和反射12.动态创建对象执行方法