这么做有一个问题:我们的每一个DAO 层的接口(Mapper 接口也属于),如果要拿到一个SqlSessionTemplate,去操作数据库,都要创建实现一个实现类,加上@Repository 的注解,继承BaseDao,这个工作量也不小。
另外一个,我们去直接调用selectOne()方法,还是出现了Statement ID 的硬编码,MapperProxy 在这里根本没用上。
我们可以通过什么方式,不创建任何的实现类,就可以把Mapper 注入到别的地方使用,并且可以拿到SqlSessionTemplate 操作数据库呢?
这个也确实是我们在Spring 中的用法。那我们就必要弄清楚,我们只是注入了一个接口,在对象实例化的时候,是怎么拿到SqlSessionTemplate 的?当我们调用方法的时候,还是不是用的MapperProxy?