项目引用自己jar包,jar包含有数据源添加数据库信息,执行项目时,jar包中没有添加数据。springboot中 mybatis扫描jar包中的mapper文件

首先说明问题,在运行项目时,项目引用的jar包(依赖),而依赖中又有添加数据源的相关操作,但是在执行操作时,引用的依赖,并没有添加到数据库中信息,期间也没有报异常。
经过debug调试,先上截图。这里说出一点,debug调试的时候会影响事务。过程有点复杂,不在讲解。
在这里插入图片描述
大家看我箭头指向的地方,说not Found ×××××××××
这个not found 就是我的jar包中的dao层,意思是没有找到。那么如何才能找到呢?
需要以下配置。
首先
在这里插入图片描述
运行项目的启动类中的MapperScann注解的值为两个项目(一个是运行的项目,一个是引用的项目)的dao层的全限定名注意是dao层接口的权限定名,至于ComponentScan注解,可加可不加,这个是spring中的注解,目的扫描所有的包。注意我只说了这两个注解,我上面还有其他注解,大家没有用到,就不用加了。我这里直接截图,有点省事,没有取消。在这里给大家提醒,希望大家注意到。
其次
在application.yml中,增加以下配置
在这里插入图片描述
两个项目(一个是运行的项目,一个是引用的项目)的mapper.xml的resources目录结构下的权限定名。

mapper-locations: classpath:mappers/*.xml,classpath*:mapper/*.xml

需要注意的是mapper-locations:的值,大家每个人的可能会不一样,大家不要照着我的进行复制,一定要按照实际情况。我当时就是因为照着网上复制,头疼老半天,(jar中还是没有添加数据到数据库。)

下面要说的就是,虚拟机会针对自己的项目打过后的jar包代码进行优化。

这辈子坚持与不坚持都不可怕,怕的是独自走在坚持的道路上!

欢迎加入技术群聊!

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/taiguolaotu/article/details/106266256