zoukankan      html  css  js  c++  java
  • mybatis中引入mapper的几种方式 笔记

    0 环境

    • 系统环境:win10
    • 数据库:mysql
    • IDE: IDEA

    1 mybatis全局配置文件引入

    • 方式1:使用mapper resouce属性注册mapper xml文件
    <mappers>
        <mapper resource="Mapper xml的路径(相对于classes的路径)"/>
    </mappers>

    注意 直接引用的xml,Mapper xml中namespace同名的Mapper接口(接口存在)

    • 方式2:使用mapper class属性注册Mapper接口
    <mappers>
        <mapper class="接口的完整类名" />
    </mappers>

    mybais去加载class对应的接口,然后还会去加载该接口同目录下的同名xml文件

    同目录
    同目录

    编译之后的文件中少了UserMapper.xml,还需要在pom.xml中project下添加如下配置:

    <build>
        <resources>
            <resource>
                <directory>${project.basedir}/src/main/java</directory>
                <includes>
                    <include>**/*.xml</include>
                </includes>
            </resource>
            <resource>
                <directory>${project.basedir}/src/main/resources</directory>
                <includes>
                    <include>**/*</include>
                </includes>
            </resource>
        </resources>
    </build>
    • 方式3:使用package元素批量注册Mapper接口

    批量注册Mapper接口(类似别名包扫描)

    <mappers>
        <package name="需要扫描的包" />
    </mappers>

    mybatis会扫描package元素中name属性指定的包及子包中的所有接口 做为Mapper接口进行注册

    法一
    法一

    放一起有点难受 可以接口(放在java目录下) xml(放在resources)分离 法二

    法二 接口 xml分离目录同名
    法二 接口 xml分离目录同名

    2 springboot中配置

    1.启动类

    //在xxxApplication启动类中添加包扫描
    @MapperScan(basePackages = "xxx")

    2.在pom.xml中添加如下配置

      <build>
            <resources>
                <resource>
                    <directory>src/main/resources</directory>
                </resource>
                <resource>
                    <directory>src/main/java</directory>
                    <includes>
                        <include>**/*.xml</include>
                    </includes>
                </resource>
            </resources>
        </build>
    作者:以罗伊
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须在文章页面给出原文链接,否则保留追究法律责任的权利。
  • 相关阅读:
    使用discourse 作为社区工具
    dremio schema 更新的问题
    go-mysql-server 新版本发布
    开发一个dremio user_agent 解析函数
    java 几个不错的user_agent 解析工具包
    Docker Swarm 高可用详解
    用Docker Swarm实现容器服务高可用
    Docker 1.12 :认识 Swarm 模式下的节点崩溃处理
    Linux下磁盘分区调整(在不使用LVM的情况下)
    docker-swarm----多机容器管理
  • 原文地址:https://www.cnblogs.com/my-ordinary/p/13503085.html
Copyright © 2011-2022 走看看