转载自https://blog.csdn.net/hanpenghu/article/details/83897618

springboot maven资源路径配置 resource路径配置, 解决mybatis的xml放在java路径而没有放在resource路径下报错的问题

2018年11月09日 14:48:26 hanpenghu 阅读数:99
 

我是这样配置的

  1.  
    <build>
  2.  
    <!--resources配置解决mybatis 的mapperXml配置在java路径不被扫描的问题 -->
  3.  
    <resources>
  4.  
    <resource>
  5.  
    <directory>src/main/java</directory>
  6.  
    </resource>
  7.  
    <resource>
  8.  
    <directory>src/main/resources</directory>
  9.  
    </resource>
  10.  
    </resources>
  11.  
    <plugins>
  12.  
    <plugin>
  13.  
    <groupId>org.springframework.boot</groupId>
  14.  
    <artifactId>spring-boot-maven-plugin</artifactId>
  15.  
    </plugin>
  16.  
    <!--跳过测试 -->
  17.  
    <plugin>
  18.  
    <groupId>org.apache.maven.plugins</groupId>
  19.  
    <artifactId>maven-surefire-plugin</artifactId>
  20.  
    <configuration>
  21.  
    <skipTests>true</skipTests>
  22.  
    </configuration>
  23.  
    </plugin>
  24.  
    </plugins>
  25.  
    </build>
  26.  
     
  27.  
     
  28.  
    </project>

然后在资源文件 application.properites里面配置mybatis的xml路径

  1.  
    server.port=8081
  2.  
     
  3.  
    #必须有
  4.  
    mybatis.mapper-locations=classpath*:com/hanhan/dao/xmlMapper/*.xml
  5.  
    #必须有
  6.  
    logging.config=classpath:logback.xml
  7.  
    #必须有
  8.  
    spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
  9.  
    #必须有
  10.  
    spring.datasource.url=jdbc:mysql://127.0.0.1:3307/ipace?autoReconnect=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=CTT
  11.  
    #必须有
  12.  
    spring.datasource.username=root
  13.  
    #必须用
  14.  
    spring.datasource.password=root
  15.  
     
  16.  
     
  17.  
    #32位随机字符串
  18.  
    #dd9008e5ec8608c9eb9d57ab764651eb
  19.  
    rand.str = ${random.value}
  20.  
    #36位,比32位的多了4个-
  21.  
    #0cf88531-9569-44c4-926e-2528dd5948e2
  22.  
    rand.uuid = ${random.uuid}
  23.  
    #随机int类型,主意有负数
  24.  
    rand.intid = ${random.int}
  25.  
    #随机long类型
  26.  
    rand.longid = ${random.long}
  27.  
    #100以内的随机int类型
  28.  
    rand.number = ${random.int(100)}
  29.  
    #0-10亿范围内的随机int类型
  30.  
    rand.range = ${random.int[0,1000000000]}
  31.  
     

java的接口mapper路径扫描在启动类上配置 

  1.  
    import org.mybatis.spring.annotation.MapperScan;
  2.  
    import org.springframework.boot.SpringApplication;
  3.  
    import org.springframework.boot.autoconfigure.SpringBootApplication;
  4.  
    import org.springframework.scheduling.annotation.EnableScheduling;
  5.  
     
  6.  
    @SpringBootApplication(scanBasePackages = {"com.hanhan","hanhan"})
  7.  
    @MapperScan({"com.hanhan.dao"})
  8.  
    @EnableScheduling
  9.  
    public class BeetltestApplication {
  10.  
     
  11.  
     
  12.  
    public static void main(String[] args) {
  13.  
    SpringApplication.run(BeetltestApplication.class, args);
  14.  
    }
  15.  

贴完别人的  说下我的问题,

首先是引入springboot集成的mybatis的jar包

<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.2</version>
</dependency> 其次是applicatioin的配置文件配置数据库的连接等
spring:
datasource:
name: feibi
url: jdbc:mysql://****/i***
username: ***
password: ***
# 使用druid数据源
type: com.alibaba.druid.pool.DruidDataSource
driver-class-name: com.mysql.jdbc.Driver
filters: stat
maxActive: 20
initialSize: 1
maxWait: 60000
minIdle: 1
timeBetweenEvictionRunsMillis: 60000
minEvictableIdleTimeMillis: 300000
validationQuery: select 'x'
testWhileIdle: true
testOnBorrow: false
testOnReturn: false
poolPreparedStatements: true
maxOpenPreparedStatements: 20

applicatioin里还要配置mybatis的扫描xml文件位置

mybatis:
mapper-locations: classpath:mybatis/*.xml
config-location: classpath:conf/mybatis-config.xml
check-config-location: true

最后是启动类需要加入mapperscan

@MapperScan("com.*.*.dao")

mybatis的dao注入失败的更多相关文章

  1. mybatis的mapper注入失败

    因为处在两个不同的资源文件夹下: 导致classpath无法加载其中一些文件,所以修改为classpath*后顺利进行. <!-- 加载spring容器 --> <!-- neede ...

  2. Error creating bean with name 'unMblTotController': 注入失败

    今天新来的小伙子,进公司做项目,然后自己新建了包,出了以下错误 y.UnsatisfiedDependencyException: Error creating bean with name 'unM ...

  3. spring的bean注入扫瞄方法和mybatis的dao bean注入扫描方法

    spring的bean注入扫面方法:@ComponentScan(basePackages = "com.pingan.property.icore.pap.*")mybatis的 ...

  4. 关于SpringBoot集成myBatis时,mapper接口注入失败的问题

    问题描述: 在Spring Boot集成myBatis时,发现启动时,mapper接口一直注入失败. 现象如下: VehicleDAO就是需要的mapper对象,一个简单的接口. 已经在applica ...

  5. AOP 注入失败的问题

    启用了AOP 后,报这样的类似错误: Error creating bean with name 'bpmpSysUserService': Injection of autowired depend ...

  6. 记一次Spring的aop代理Mybatis的DAO所遇到的问题

    由来 项目中需要实现某个订单的状态改变后然后推送给第三方的功能,由于更改状态的项目和推送的项目不是同一个项目,所以为了不改变原项目的代码,我们考虑用spring的aop来实现. 项目用的是spring ...

  7. MyBatis学习--mybatis开发dao的方法

    简介 使用Mybatis开发Dao,通常有两个方法,即原始Dao开发方法和Mapper接口开发方法. 主要概念介绍: MyBatis中进行Dao开发时候有几个重要的类,它们是SqlSessionFac ...

  8. 四 mybatis开发dao的方法

    mybatis开发dao的方法 1.1     SqlSession使用范围 1.1.1     SqlSessionFactoryBuilder //以流的方式读取总的配置文件 Reader rea ...

  9. MyBatis开发Dao

    MyBatis开发Dao有两种方法: 1.原始Dao开发方法,就是程序需要编写Dao的接口和Dao的实现类. 2.MyBatis的mapper接口(相当于Dao接口)代理开发方法.(更重要) ---- ...

随机推荐

  1. Android Studio 代码回退

    1.VCS–Local History–Show History 或者 这个按钮 2.代码操作记录出现了,选定我们操作的一个历史阶段 3.点击左上角的按钮(revert),代码回退成功

  2. three.js 利用uv和ThreeBSP制作一个快递柜

    最近有three网友,问我要不要学习blender,其实我感觉学习一下也无妨,不过花大量时间精通,尚可不必,术业有专攻给别人留一条路吧,哈哈.那我我们就是用ThreeBSP和uv贴图的知识来制作一个定 ...

  3. Bagging与随机森林(RF)算法原理总结

    Bagging与随机森林算法原理总结 在集成学习原理小结中,我们学习到了两个流派,一个是Boosting,它的特点是各个弱学习器之间存在依赖和关系,另一个是Bagging,它的特点是各个弱学习器之间没 ...

  4. 焦大:seo思维光年(中)seo体系化

    http://www.wocaoseo.com/thread-56-1-1.html 光年的seo培训一直被业界公认为高端的培训,其主导的seo数据化一直对现在很多人的影响至深,比如我自己.但是也有人 ...

  5. UI自动化测试、接口测试等自动化测试策略

    今天跟大家介绍UI测试.接口测试.单元测试主要内容,以及每种测试花费时间讨论.UI测试[Selenium]UI测试是最接近软件真实用户使用行为的测试类型.通常是模拟真实用户使用软件的行为,即模拟用户在 ...

  6. 揭秘!containerd 镜像文件丢失问题,竟是镜像生成惹得祸

    导语 作者李志宇,腾讯云后台开发工程师,日常负责集群节点和运行时相关的工作,熟悉 containerd.docker.runc 等运行时组件.近期在为某位客户提供技术支持过程中,遇到了 contain ...

  7. JS数组遍历的十二种方式

    遍历有如下几种方式 数组方法 map forEach filter find findIndex every some reduce reduceRight 其他方法 for for in for o ...

  8. 【JDK】Linux安装源码包JDK完整步骤

    [JDK]Linux安装源码包JDK完整步骤 1.检查一下系统中的jdk版本 [root@localhost software]# java -version 显示: openjdk version ...

  9. 【转】mac上安装gradle

    http://www.douban.com/note/311599602/ 首先,先download最新版本的gradle,网址如下:http://www.gradle.org/get-started ...

  10. flex 中间层的高度完全由flex元素决定

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...