转载自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. Java中实现十进制数转换为二进制的三种方法

    第一种:除基倒取余法 这是最符合我们平时的数学逻辑思维的,即输入一个十进制数n,每次用n除以2,把余数记下来,再用商去除以2...依次循环,直到商为0结束,把余数倒着依次排列,就构成了转换后的二进制数 ...

  2. C++ IO的一些注意点

    读入这个坑一直以来都深受其麻烦,把遇到一些注意点记一下吧. 1.getchar读入 以前练线段树的时候做到Acwing#246 Interval GCD(原题在CodeHunter上,人懒就在Acwi ...

  3. golang学习笔记:Interface类型断言详情

    原文链接:https://www.2cto.com/kf/201712/703563.html 1. 用于判断变量类型 demo如下: switch t := var.(type){ case str ...

  4. rcp

    rcp的命令 rcp,远程文件复制.rcp既可以在本地主机和远程主机之间进行文件复制,也可以用于在两个远程主机之间进行文件复制.除了复制文件外,rcp也可以用于目录复制,只需要加参数-r. rcp的命 ...

  5. 用find命令删除某目录下及所有子目录中某类型的特定文件

    当前目录下含有多级子目录,并且每一个子目录下都含有多个文件,如何删除当前目录及所有子目录下特定类型的文件,比如:*.pyc(所有文件名以“*.pyc”结尾的文件): 可以使用find命令,将当前目录下 ...

  6. APEX安装

    git clone https://github.com/NVIDIA/apex.gitcd apex export CUDA_HOME=/usr/local/cudapip3 install -v ...

  7. log4j升级到log4j2

    log4j升级到log4j2 1.导入依赖 log4j2应尽量使用同一版本,否则可能出现不兼容的情况 <!-- log4j2 start --> <!-- log4j-1.2-api ...

  8. [SCOI2013]摩托车交易 题解

    思路分析 为了让交易额尽量大,显然我们需要尽量多地买入.对于每个城市,到达这个城市时携带的黄金受到几个条件的影响:之前卖出的黄金,之前能买入的最多的黄金,前一个城市到当前城市的路径上的最小边权.既然不 ...

  9. Transform与Vector3 的API

    Transform.InverseTransformDirection(Vector3 direction) Vector3.ProjectOnPlane(Vector3 vector, Vector ...

  10. 【C#】静态构造方法与静态变量

    扯下闲篇先,本来今天预计整理下委托.事件.Lamada的笔记,然后再把单例模式的懒汉.饿汉模式看完. 在看到懒汉的双重加锁设计时,向同桌贩卖了下该设计的优点,结果反被同桌的一个问题难倒了~! 一. 有 ...