Springboot devtools热部署Mybatis报错

使用SpringBoot devtools热部署功能,Mybatis出现无法找到映射文件的错误提示,导致无法启动web服务器

错误提示:
Caused by: java.lang.IllegalStateException: Illegal access: this web application instance has been stopped already. Could not load [mapper/]. The following stack trace is thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access.
    at org.apache.catalina.loader.WebappClassLoaderBase.checkStateForResourceLoading(WebappClassLoaderBase.java:1363) ~[tomcat-embed-core-9.0.14.jar:9.0.14]
    at org.apache.catalina.loader.WebappClassLoaderBase.getResource(WebappClassLoaderBase.java:1023) ~[tomcat-embed-core-9.0.14.jar:9.0.14]
    at org.springframework.core.io.ClassPathResource.resolveURL(ClassPathResource.java:155) ~[spring-core-5.1.4.RELEASE.jar:5.1.4.RELEASE]
    at org.springframework.core.io.ClassPathResource.getURL(ClassPathResource.java:193) ~[spring-core-5.1.4.RELEASE.jar:5.1.4.RELEASE]
    at org.springframework.core.io.support.PathMatchingResourcePatternResolver.findPathMatchingResources(PathMatchingResourcePatternResolver.java:497) ~[spring-core-5.1.4.RELEASE.jar:5.1.4.RELEASE]
    at org.springframework.core.io.support.PathMatchingResourcePatternResolver.getResources(PathMatchingResourcePatternResolver.java:298) ~[spring-core-5.1.4.RELEASE.jar:5.1.4.RELEASE]
    at org.mybatis.spring.boot.autoconfigure.MybatisProperties.getResources(MybatisProperties.java:191) ~[mybatis-spring-boot-autoconfigure-2.0.0.jar:2.0.0]
    at org.mybatis.spring.boot.autoconfigure.MybatisProperties.lambda$resolveMapperLocations$0(MybatisProperties.java:185) ~[mybatis-spring-boot-autoconfigure-2.0.0.jar:2.0.0]

问题原因:
关键字不能加载[mapper/]。
springBoot 使用了spring-boot-devtools,热部署后加载mybatis映射文件找不到对应目录造成的

只需要设application.properties
mybatis.mapperLocations=classpath*:mapper/*.xml
使用classpath*:替换之前的classpath:来告诉spring查找所有classpath

mybatis:
  type-aliases-package: com.company.bean
  mapper-locations: classpath*:mapper/*.xml 
  configuration:
    cache-enabled: true
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值