成都创新互联网站制作重庆分公司

Spring中@Autowire注解如何使用

Spring中@Autowire注解如何使用,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

创新互联公司专业为企业提供忻城网站建设、忻城做网站、忻城网站设计、忻城网站制作等企业网站建设、网页设计与制作、忻城企业网站模板建站服务,10余年忻城做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

一 配置

      

二 dao接口

BaseDao
package org.crazyit.app.dao;public interface BaseDao{   void save(T e);}
ItemDao
package org.crazyit.app.dao;import org.crazyit.app.domain.*;public interface ItemDao extends BaseDao{}
UserDao
package org.crazyit.app.dao;import org.crazyit.app.domain.*;public interface UserDao extends BaseDao{}

三 dao实现类

BaseDaoImpl
package org.crazyit.app.dao.impl;import org.crazyit.app.dao.*;public class BaseDaoImpl implements BaseDao{   public void save(T e)   {      System.out.println("程序保存对象:" + e);   }}
ItemDaoImpl
package org.crazyit.app.dao.impl;import org.springframework.stereotype.*;import org.crazyit.app.dao.*;import org.crazyit.app.domain.*;@Component("itemDao")public class ItemDaoImpl extends BaseDaoImpl  implements ItemDao{}
UserDaoImpl
package org.crazyit.app.dao.impl;import org.springframework.stereotype.*;import org.crazyit.app.dao.*;import org.crazyit.app.domain.*;@Component("userDao")public class UserDaoImpl extends BaseDaoImpl  implements UserDao{}

四 Bean

Item
package org.crazyit.app.domain;public class Item{}
User
package org.crazyit.app.domain;public class User{}

五 service接口

BaseService
package org.crazyit.app.service;import org.springframework.stereotype.*;import org.springframework.beans.factory.annotation.*;import org.crazyit.app.service.*;public interface BaseService{  void addEntity(T entity);}
ItemService
package org.crazyit.app.service;import org.springframework.stereotype.*;import org.springframework.beans.factory.annotation.*;import org.crazyit.app.service.*;import org.crazyit.app.domain.*;@Componentpublic interface ItemService extends BaseService{}
UserService
package org.crazyit.app.service;import org.springframework.stereotype.*;import org.springframework.beans.factory.annotation.*;import org.crazyit.app.service.*;import org.crazyit.app.domain.*;@Componentpublic interface UserService extends BaseService{}

六 Service实现类

BaseServiceImpl
package org.crazyit.app.service.impl;import org.springframework.stereotype.*;import org.springframework.beans.factory.annotation.*;import org.crazyit.app.dao.*;import org.crazyit.app.service.*;public class BaseServiceImpl implements BaseService{  @Autowired  private BaseDao dao;  public void addEntity(T entity)  {    System.out.println("调用" + dao      + "保存实体:" + entity);  }}
ItemServiceImpl
package org.crazyit.app.service.impl;import org.springframework.stereotype.*;import org.springframework.beans.factory.annotation.*;import org.crazyit.app.service.*;import org.crazyit.app.domain.*;@Component("itemService")public class ItemServiceImpl extends BaseServiceImpl  implements ItemService{}
UserServiceImpl
package org.crazyit.app.service.impl;import org.springframework.stereotype.*;import org.springframework.beans.factory.annotation.*;import org.crazyit.app.service.*;import org.crazyit.app.domain.*;@Component("userService")public class UserServiceImpl extends BaseServiceImpl  implements UserService{}

七 测试类

package lee;import org.springframework.context.ApplicationContext;import org.springframework.context.support.ClassPathXmlApplicationContext;import org.crazyit.app.service.*;import org.crazyit.app.domain.*;public class BeanTest{  public static void main(String[] args)throws Exception  {    // 创建Spring容器    ApplicationContext ctx = new      ClassPathXmlApplicationContext("beans.xml");    UserService us = ctx.getBean("userService", UserService.class);    us.addEntity(new User());    ItemService is = ctx.getBean("itemService", ItemService.class);    is.addEntity(new Item());  }}

八 测试

调用org.crazyit.app.dao.impl.UserDaoImpl@b7dd107保存实体:org.crazyit.app.domain.User@42eca56e调用org.crazyit.app.dao.impl.ItemDaoImpl@52f759d7保存实体:org.crazyit.app.domain.Item@7cbd213e

关于Spring中@Autowire注解如何使用问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注创新互联行业资讯频道了解更多相关知识。


当前名称:Spring中@Autowire注解如何使用
本文来源:http://cxhlcq.com/article/ijpgeh.html

其他资讯

在线咨询

微信咨询

电话咨询

028-86922220(工作日)

18980820575(7×24)

提交需求

返回顶部