详解mybatis-plus的 mapper.xml 路径配置的坑

下面是针对“详解mybatis-plus的 mapper.xml 路径配置的坑”的完整攻略:

一、前置知识介绍

在使用 mybatis-plus 时,我们需要在 mybatis 的配置文件中配置路径扫描,以便 mybatis-plus 可以找到 mapper.xml 文件,并自动扫描生成 mapper 接口类,简化开发流程。

具体来说,mybatis-plus 会在 classpath 下扫描所有 mapper.xml 文件,并自动将其绑定到对应的 mapper 接口类上。这个过程的重要配置项是 mybatis.mapper-locations,需要根据实际情况进行设置(具体配置方法后面会讲到)。

二、路径配置的坑

在实际开发中,我们常常会遇到以下这些路径配置的坑:

  1. mapper.xml 应该放在哪个文件夹下?

    通常情况下,我们将 mapper.xml 放在 resources 目录下的一个名叫 mapper 的文件夹中(这个文件夹名字一般自己定义,但在后文的示例中也会使用这个命名方式)。但是,如果不是按照这种方式命名和放置,就需要在 mybatis-plus 的配置文件中进行对应修改。

  2. "classpath:"的意义

    在配置 mybatis.mapper-locations 时,我们经常会用到 "classpath:" 关键字,通常用于表示文件路径对应的 classpath 下的位置。这个关键字比较常用,一般都会加上。

三、完整攻略

下面是实际针对上面问题的完整攻略。首先,我们需要修改 mybatis-plus 的配置文件:

# mybatis-plus 配置文件
mybatis-plus:
  mapper-locations: classpath:mapper/**/*.xml

上述配置中,mapper-locations 指定了 classpath 下的 mapper/**/*.xml 所有文件作为 mapper.xml 文件的路径,其中 ** 表示任意层数子文件夹,即匹配任意文件夹下的所有以 .xml 结尾的文件。

在 JAVA 代码中,使用 mybatis-plus 提供的 @MapperScan 注解来指定 mapper 的扫描包:

@SpringBootApplication
@MapperScan("com.example.demo.mapper")
public class DemoApplication {

    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }

}

上述代码中,注解标注了 mapper 所在的扫描包路径。这样,mybatis-plus 就可以找到对应的 mapper.xml 文件,并自动绑定生成 mapper 接口类。

四、示例说明

下面是两个在 path 配置时可能会遇到的示例:

示例1

假设 mapper.xml 文件放在了 resources 目录下而不是 resources/mapper 文件夹下,此时需要更改 mybatis-plus 配置文件的 mapper-locations:

# mybatis-plus 配置文件
mybatis-plus:
  mapper-locations: classpath:/**/*.xml

上述配置表明在 classpath 下找到所有的 .xml 文件,而不限于 mapper 所在的文件夹。

示例2

假设我们的 mapper.xml 放在了 resources/mapper/demo 目录下,我们需要修改 mybatis-plus 配置文件的 mapper-locations:

# mybatis-plus 配置文件
mybatis-plus:
  mapper-locations: classpath:mapper/demo/**/*.xml

上述配置中,mapper-locations 指定扫描了 classpath 下的 mapper/demo/**/*.xml 目录及其子目录下的 mapper.xml 文件。

五、总结

本文主要介绍了 mybatis-plus 中 mapper.xml 路径配置的坑,给出了两个示例说明。在实际应用中,要根据实际情况灵活设置,以确保 mybatis-plus 能够正确扫描 mapper.xml 文件并生成适配的 mapper 接口类。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:详解mybatis-plus的 mapper.xml 路径配置的坑 - Python技术站

(0)
上一篇 2023年5月30日
下一篇 2023年5月30日

相关文章

  • python 解析XML python模块xml.dom解析xml实例代码

    Python是一门非常强大的编程语言,其拥有许多方便快捷的模块,其中xml.dom模块解析XML文件便是其中之一。本篇攻略详细讲解python模块xml.dom解析xml的具体用法。 一、xml.dom模块基本介绍 XML 是一种标记语言,和 HTML 类似,但 XML 的目的是传输数据,而不是展示数据。XML 模块提供了用于解析 XML 文档的类和函数。它…

    html 2023年5月30日
    00
  • Win11怎么允许安装软件? Win11允许和禁止安装软件的方法

    以下是“Win11怎么允许安装软件? Win11允许和禁止安装软件的方法”的完整攻略: Win11怎么允许安装软件? 在Win11系统中,用户可以通过一些设置来允许或禁止安装软件。以下是一些操作步骤和示例说明。 步骤1:打开“应用和功能”设置 在Win11系统中,可以通过“应用和功能”设置来允许或禁止安装软件。以下是一些打开“应用和功能”设置的方法: 点击“…

    html 2023年5月18日
    00
  • 用asp+xmlhttp编写web采集程序

    用ASP+XMLHTTP编写web采集程序主要分为以下几个步骤: 第一步:创建ASP网页 首先需要一个ASP网页来实现采集程序的逻辑,可以使用请求对象(Request)和响应对象(Response)来实现。 第二步:创建XMLHTTP对象 使用XMLHTTP对象向目标网站发送HTTP请求,获取目标网站的HTML代码,具体可以通过以下代码来实现: Dim xm…

    html 2023年5月30日
    00
  • Javaweb El表达式实例详解

    Javaweb El表达式实例详解 什么是EL表达式 EL表达式全称Expression Language,是JavaWeb中的一种表达式语言,它主要用于在jsp页面中方便地获取并展示JavaBean或数据的值。EL表达式是一种用于在JSP页面中使用的特殊语言,它的主要功能是用于动态获取JSP页面中的数据,表现出一定的“动态性”。这样,在处理一些内容时,JS…

    html 2023年5月31日
    00
  • python标准库ElementTree处理xml

    Python标准库中自带的 ElementTree 是一个用于解析或创建XML格式数据的模块。它非常易于使用,支持python2和python3。在本文中,我们将讲解在Python中如何使用ElementTree处理XML。 1. 安装和导入ElementTree ElementTree 是一个Python标准库,所以我们无需安装就可以使用它。如果你使用的是…

    html 2023年5月30日
    00
  • Microsoft的XMLHTTP对象介绍

    Microsoft的XMLHTTP对象介绍 什么是XMLHTTP对象? XMLHTTP对象是指Microsoft.XMLHTTP或Microsoft.XMLHTTP.6.0。这是在Internet Explorer 5.5中引入的第一个版本。用于创建XMLHttpRequest对象,它是与服务器通信的基础。 如何创建XMLHTTP对象? 创建XMLHTTP对…

    html 2023年5月30日
    00
  • 网站怎么提高网页关键词排名的方法

    以下是“网站怎么提高网页关键词排名的方法”的完整攻略: 网站怎么提高网页关键词排名的方法 网站的关键词排名对于网站的流量和曝光度有着非常重要的影响。以下是一些提高网站关键词排名的方法,以便网站管理员更好地优化网站。 方法1:优化网站内容 网站的内容是影响关键词排名的最重要因素之一。以下是一些优化网站内容的方法: 确保网站内容与关键词相关,并且内容质量高。 使…

    html 2023年5月18日
    00
  • Mybatis代码生成器Mybatis Generator(MBG)实战详解

    Mybatis Generator(MBG)实战详解 Mybatis Generator(简称MBG)是一个基于Mybatis框架的代码生成器。MBG可以帮助开发者快速生成DAO(Data Access Object)层的代码。本文将详细讲解MBG的使用方法,力求使初学者也能轻松上手。 安装MBG MBG可以通过Maven直接引入。在项目的pom.xml中加…

    html 2023年5月30日
    00
合作推广
合作推广
分享本页
返回顶部