MybatisPlus使用Mybatis的XML的动态SQL的功能实现多表查询

准备工作

要配置的内容如下
1.需要建立一个mapper存放对应的BaseMapper的文件夹
2.需要写好对应的MybatisPlus的文件,当然你得先把所有的包都导入到pom.xml里面去才行
3.在Resources的文件夹下面创建一个mapper的文件存放你想写的动态sql的XML的文件夹
4.写好对应的的Resourc下的mapper的SQL的id对应好src下面的mapper下面的BaseMapper里面的方法名。

正文

第一步 导包

<dependencies>
   <dependency>
        <groupId>org.projectlombokgroupId>
        <artifactId>lombokartifactId>
    dependency>

    <dependency>
        <groupId>com.baomidougroupId>
        <artifactId>mybatis-plus-boot-starterartifactId>
        <version>3.5.2version>
    dependency>

    <dependency>
        <groupId>net.coobirdgroupId>
        <artifactId>thumbnailatorartifactId>
        <version>0.4.19version>
    dependency>

    <dependency>
        <groupId>mysqlgroupId>
        <artifactId>mysql-connector-javaartifactId>
    dependency>

    <dependency>
        <groupId>org.springframework.bootgroupId>
        <artifactId>spring-boot-starter-webartifactId>
    dependency>

    <dependency>
        <groupId>org.springframework.bootgroupId>
        <artifactId>spring-boot-starter-testartifactId>
        <scope>testscope>
    dependency>
dependencies>

可以根据自己的工程自由调整

第二步 创建一个src下的mapper包

MybatisPlus使用Mybatis的XML的动态SQL的功能实现多表查询_第1张图片

当然实体类也得自己建立好,我在这里不多赘述

第三步 在Resources下建立一个文件夹存放mapper.xml

什么鬼

这里是存放Mybatis的XML文件的地方

第四步 在applicant.yml里面引入对应的配置文件

#DataSource Config
spring:
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    username: root
    password: 123456
    url: jdbc:mysql://localhost:3306/WMSPlus?useUnicode=true&useSSL=false&characterEncoding=utf8
  servlet:
    multipart:
      enabled: true #是否启用http上传处理
      max-request-size: 100MB #最大请求文件的大小
      max-file-size: 20MB #设置单个文件最大长度
	  file-size-threshold: 20MB #当文件达到多少时进行磁盘写入

#mybatis-plus
mybatis-plus:
  configuration:
    map-underscore-to-camel-case: false # 数据库下划线自动转驼峰标示关闭
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
  mapper-locations: classpath:/mapper/*.xml

#主机的端口资源
localhost: http://192.168.123.146:9090

第五步 完成使用

在Resources下面写的文件有这几个要注意的地方
id名字是BaseMapper里面需要使用的方法名
mapper的namespace是对应BaseMapper的Java的BaseMapper的类路径


DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
        
<mapper namespace="com.mapper.UserMapper">

	
    <select id="getAllUser" resultType="com.entity.User">
        select * from user
    select>

mapper>

要在BaseMapper里面使用XML里面的设置好的东西的话,要保证对应的id名字和方法名一致

package com.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.entity.User;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;

import java.util.List;

/**
 * @author:DUOLUONIANDAI
 * @DATA:2023/3/29 13:45
 * @Title:user的mapper
 */
@Mapper
public interface UserMapper extends BaseMapper<User> {
	//这里的getAllUser要对应好XML里面的id名字
    public List<User> getAllUser();
}

完成配置

然后就可以在对应的XML里面进行对应的SQL的编写,但是注意最好还是注意一个XML对应的一个BaseMapper

你可能感兴趣的:(MybetisPlus,mybatis,xml,sql)