mybatis+springmvc框架反射获取dao类

本文介绍在MyBatis框架中如何正确地获取DAO接口的实例。由于DAO层通常定义为接口形式,直接通过反射创建实例会失败。文章提出解决方案,即利用Spring框架提供的机制,通过SqlSession的getMapper方法来获得DAO接口的代理实现。

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

正常情况下,我们通过反射获取一个类对象是这样的:
Class boClass = Class.forName("类名");
Object bsabo = boClass.newInstance();

但是在使用mybatis框架的时候,dao类通常都是interface接口,这样获取会报错。作为一只刚开始使用mybatis框架的菜鸟,能模仿着使用,然而并不了解mybatis框架的原理,后来看到了这篇文章http://blog.youkuaiyun.com/mingtian625/article/details/47684271,在那篇文章中有句话“spring+mybatis注解方式,也是没有实现类的,但是spring会默认返回MapperFactoryBean对象作为实现类的替换”。所以可以利用框架现有的机制,从而得到dao类对象

Class testDao = Class.forName("类名");
SqlSession session = sqlSessionFactory.openSession();  
  Object mapper = session.getMapper(testDao);  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值