转载自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. fatal error: glib.h: No such file or directory

    在学习BLE bluez的时候,做了一个测试程序,看到gatttool.c下面有一个glib解析命令行的功能,想移植到自己的程序接口中,但是添加了#include <glib.h>后,出现 ...

  2. SuperSlide轮播切换

    <!-- 点击切换引入 --> <script type="text/javascript" src="js/jquery.js">&l ...

  3. selenium定位方法(一)

    selenium定位方法-(一) 1.定位页面元素的方式(By类的方法) 1)id定位:通过页面元素的id属性值来定位一个页面元素       注意事项:如果每次刷新网页之后元素的id属性值都不同,说 ...

  4. Java多线程_生产者消费者模式1

    生产者消费者模型       具体来讲,就是在一个系统中,存在生产者和消费者两种角色,他们通过内存缓冲区进行通信,生产者生产消费者需要的资料,消费者把资料做成产品.生产消费者模式如下图.(图片来自网络 ...

  5. 2、Entity Framework Core 3.1入门教程-创建数据库和迁移

    本文章是根据 微软MVP solenovex(杨旭)老师的视频教程编写而来,再加上自己的一些理解. 视频教程地址:https://www.bilibili.com/video/BV1xa4y1v7rR ...

  6. Azure Logic App 入门(一)

    一,引言 前两天看一个azure相关的题,接触到一个叫 “Azure Logic App” 的服务,刚好,今天抽空学习以下,顺便结合它做一篇入门的分析文章. 首先,我们得对它有个大概的认识,了解以下A ...

  7. 由mv命令引发的对inode的思考

    一场机器迁移引起的思考 最近团队一台机器老化了,准备做全量迁移,一不小心,就把100多个G的/data目录放到了新机器的/data/data目录下,上愁了,怎么削减一层data目录呢?难倒像Windo ...

  8. 期望概率DP

    期望概率DP 1419: Red is good ​ Description ​ 桌面上有\(R\)张红牌和\(B\)张黑牌,随机打乱顺序后放在桌面上,开始一张一张地翻牌,翻到红牌得到1美元,黑牌则付 ...

  9. python3笔记-字典

    5 1 # 创建字典 6 2 d=dict(name='lily',age=18,phone='') 7 3 print(d) 4 # {'name': 'lily', 'age': 18, 'pho ...

  10. 万级K8s集群背后etcd稳定性及性能优化实践

    背景与挑战 随着腾讯自研上云及公有云用户的迅速增长,一方面,腾讯云容器服务TKE服务数量和核数大幅增长, 另一方面我们提供的容器服务类型(TKE托管及独立集群.EKS弹性集群.edge边缘计算集群.m ...