分享

@component和@resource联合注入

 昵称11337303 2012-12-20

@component和@resource联合注入

首先扫描<context:component-scan base-package="com.bjsxt" />

找到@Component

注入顺序:UserDaoImpl.java--》UserManagerImpl.java--》UserAction.java

 

UserAction.java

@Component("user")//默认组件名为UserAction的对象userAction,该组件对于另一个类来说就是一个资源(Resource)
@Scope("prototype")
public class UserAction extends ActionSupport implements ModelDriven {
 
 private UserRegisterInfo info = new UserRegisterInfo();
 
 private UserManager um;
 
 public UserManager getUm() {
  return um;
 }
 
 @Resource(name="userManager") //将组件(bean)userManager注入到该类中
 public void setUm(UserManager um) {
  this.um = um;
 }

UserManagerImpl.java

@Component("userManager") //相当于一个bean

//组件名为userManager,默认组件名为UserManagerImpl的对象userManagerImpl,该组件对于另一个类UserAction来说是一个@Resource(资源),在类UserAction中的@Resource后注入该组件(bean)

public class UserManagerImpl implements UserManager {
 
 private UserDao userDao;
 
 public UserDao getUserDao() {
  return userDao;
 }
 
 @Resource
 public void setUserDao(UserDao userDao) {
  this.userDao = userDao;
 }

UserDaoImpl.java

@Component("userDao")
public class UserDaoImpl implements UserDao {
 
 private HibernateTemplate hibernateTemplate;
 public void save(User u) {
  hibernateTemplate.save(u);
  
 }

@Resource
 public void setHibernateTemplate(HibernateTemplate hibernateTemplate) {
  this.hibernateTemplate = hibernateTemplate;
 }

}

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多