Spring-IOC管理对象

Spring-IOC管理Dao层对象

由于dao层只有接口,需要使用sqlsession工厂对象,通过代理获取dao层对象。
使用IOC管理dao层对象需要进行如下步骤:
1、在spring容器中使用org.mybatis.spring.mapper.MapperFactoryBean创建dao接口对象;
2、注入sqlsession配置,即给sqlSessionFactory属性注入数据库信息;
3、给mapperInterface属性指定接口名字;
4、在测试类中加载spring配置文件,通过bean id获取dao层对象;并调用dao层提供方法。

Spring-IOC管理Service层对象

service层有接口和实现类,
service实现类通过mybatis工具类获取sqlsession对象,
使用代理模式获取dao层对象。
1、在spring容器中使用具体的service实现类创建对象;
2、由于service实现类中获取dao层对象使用了被替代的mybatis工具类,
所以在service中提供一个私有dao层接口对象,并提供getter and setter方法;
3、在service实现类的具体方法中删除获取dao层对象的方法,
使用类中提供的dao层对象直接调用方法;
4、在spring容器中给service实现类的属性赋值;
5、在测试类中根据bean-id获取service层对象,调用方法。

升级版:解决多个dao和service的对象创建

spring-IOC管理dao层对象 动态代理
1、在spring容器中使用MapperScannerConfigurer类,查找指定包下的所有接口,动态生成代理对象;不指定id,会生成隐式id(标准对象引用名);
2、在测试类中根据隐式bean-id获取dao层对象,调用方法。

升级版:解决多个dao和service的对象创建

spring-IOC管理service层对象 注解 + 自动装配
由于service层与dao层不同,有具体的实现类,采用注解和自动装配来管理对象。
1、在spring容器中注释(删除)service的bean标签;
2、在spring容器开始位置开始注解扫描;
3、在service实现类前使用@Service,表示service类;
4、在service实现类中使用@Autowired完成对dao对象的赋值;
5、新建SpringJunit测试类,使用注解表示该类是spring提供对单元测试的支持,加载配置文件,在类中添加service层对象属性,并使用自动装配注解完成赋值,在测试方法中调用service的方法。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值