<mappers>标签配置的是我们的映射器,也就是Mapper.xml 的路径。这里配置的目的是让MyBatis 在启动的时候去扫描这些映射器,创建映射关系。
我们有四种指定Mapper 文件的方式:
http://www.mybatis.org/mybatis-3/zh/configuration.html#mappers
1、使用相对于类路径的资源引用(resource)
2、使用完全限定资源定位符(绝对路径)(URL)
3、使用映射器接口实现类的完全限定类名
4、将包内的映射器接口实现全部注册为映射器(最常用)
思考:
接口跟statement 是怎么绑定起来的?——method 有方法全限定名,比如:com.leon.mapper.BlogMapper.selectBlogById , 跟namespace 里面的statement ID 是相同的。
在哪一步拿到SQL 的?——ms 里面有SQL。
// DefaultSqlSession. selectList()
MappedStatement ms = configuration.getMappedStatement(statement);