Mybatis之加载Mapper接口和mapper XML

概述

Mybatis加载Mapper接口有两个入口:一个是指定mapper xml,另外一个是指定Mapper接口。mybatis

mapper xml

经过指定mapper xml的路径,Mybatis使用XMLMapperBuilder类来加载解析mapper xml文件。最后会使用mapperRegistry.addMapper(type)来加载,这个type就是mapper xml的namespace属性。app

Mapper接口

指定Mapper接口,Mybatis使用方法mapperRegistry.addMapper(type)来加载,在这个方法内部会使用类MapperAnnotationBuilder来解析Mapper接口上的注解信息,首先是加载Mapper接口对应的mapper xml文件,而后在解析注解信息。其中怎么找到Mapper接口的mapper xml文件呢?将类名转为xml路径,好比:cre.mybatis.mapper.BookMapper -> cre/mybatis/mapper/BookMapper.xml。ui

总结

咱们使用两个入口均可以让Mybatis加载咱们的Mapper,可是使用Mapper接口的话,默认的mapper xml路径就是有要求的。因此使用mapper xml路径的方式比较好。spa

相关文章
相关标签/搜索