mybatis-spring 中配置mapperLocations 的问题有哪些?

<!--myBatis文件-->在配置中如何指定多个包比如配置到classpath:code/dy包/mapping/*.xml,求大神搭救... <!--
myBatis文件
-->

在配置 中如何指定多个包 比如配置到 classpath:code/dy包/mapping/*.xml,求大神搭救
展开
 我来答
想要外双的小可爱
推荐于2019-11-08 · TA获得超过1万个赞
知道小有建树答主
回答量:15
采纳率:100%
帮助的人:6323
展开全部

1.<bean id="sessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">

<property name="dataSource" ref="datasource"></property><property 

name="typeAliasesPackage" value="com.fan.entity"/><!

2.-- 当mybatis的xml文件和mapper接口不在相同包下时,需要用mapperLocations属性指定xml文件的路径。  

3.*是个通配符,代表所有的文件,**代表所有目录下:  

4.<property name="mapperLocations" value="classpath:com/fan/mapper/*.xml" /> 

<!

5.--也可以引入mybatis配置文件 

6.<property name="configLocation" value="classpath:mybatis/SqlMapConfig.xml

></property> --></bean><!

7.-- 通过扫描的模式,扫描目录在

com.lanyuan.mapper目录下的mapper--><bean class="org.mybatis.spring.mapper.

MapperScannerConfigurer"><property name="basePackage" value="com.fan.mapper

"></property></bean>

结论是:

1.如果Mapper.xml与Mapper.class在同一个包下且同名,spring扫描Mapper.class的同时会自动扫描同名的Mapper.xml并装配到Mapper.class。

2.如果Mapper.xml与Mapper.class不在同一个包下或者不同名,就必须使用配置mapperLocations指定mapper.xml的位置。

3.此时spring是通过识别mapper.xml中的

<mapper namespace="com.fan.mapper.UserDao"> namespace的值来确定对应的Mapper.class的。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式