转载自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. GitHub 热点速览 Vol.33:听说程序员都是颜控?

    作者:HelloGitHub-小鱼干 摘要:GitHub上面除了很多有趣的项目,也有很多高颜值的项目,比如:图片共享网站 Unsplash 开源的 Dataset,提供了两百多张高颜值美照.Heroi ...

  2. Nordic 52840-Timer定时器学习问题(一)

    今天在ble_app_blinky例程中移植定时器驱动,在编译过程中报出了两个错误,在此记录一下. 1. 在nRF_Dreivers中添加nrfx_timer.c文件 选中“nRF_Dreivers  ...

  3. MongoDB联表查询

    表A: id name --------------------------- 1 Tom 2 Roger 3 Mars 4 Brent 表B: id result ----------------- ...

  4. dpkg:处理 xxx (--configure)时出错解决办法

    1.$ sudo mv /var/lib/dpkg/info /var/lib/dpkg/info_old //现将info文件夹更名2.$ sudo mkdir /var/lib/dpkg/info ...

  5. 自动化项目Jenkins持续集成

    一.Jenkins的优点 1.传统网站部署流程   一般网站部署的流程 这边是完整流程而不是简化的流程 需求分析—原型设计—开发代码—内网部署-提交测试—确认上线—备份数据—外网更新-最终测试 ,如果 ...

  6. Reliable Federated Learning for Mobile Networks

    郑重声明:原文参见标题,如有侵权,请联系作者,将会撤销发布! 以下是对本文关键部分的摘抄翻译,详情请参见原文. arXiv: 1910.06837v1 [cs.CR] 14 Oct 2019 Abst ...

  7. 【python系统学习17】python中的文件读写

    python中的文件读写 文件读写,是Python代码调用电脑文件的主要功能,能被用于读取和写入文本.音频片段.Excel文档.邮件以及任何保存在电脑上的东西. 可使用python批量的操作本地文件, ...

  8. txt工具大全(TXT文件合并、txt批量替换、编码转换器)

    http://www.wocaoseo.com/thread-301-1-1.html txt是我们在seo中常用的处理对象,但是在这个处理过程中可能有些细节需要注意,比如有些有编码问题,我们就需要编 ...

  9. 分享一个操作pdf文件的js文件-pdfObject.js(文件预览、下载、打印等操作都具备)

    获取相关资料或者源码的朋友可以关注下公众号,回复关键字pdf20200518即可

  10. idea 执行maven打包命令时,修改war包名称