Mybatis Plus使用XML编写自定义sql

之前在这里编写自定义SQL通过注解的方式可以成功,但是XML一直失败:

报错Invalid bound statement (not found)

Mybatis Plus使用XML编写自定义sql_第1张图片
后来看官方文档找到了线索
Mybatis Plus使用XML编写自定义sql_第2张图片

之前也尝试过一些方法,不知道为什么均无效。

比如:
1,在 Configuration 类上使用注解 MapperScan
2,SqlSessionFactory不要使用原生的,请使用MybatisSqlSessionFactory
等等都无效

后来走通了一个方法,步骤如下:

1,在Resources文件夹下创建一个Mapper文件夹

比如我们需要在Admin表中使用增删改查,创建AdminMapper.xml,对应MybatisPlus中的AdminMapper接口
Mybatis Plus使用XML编写自定义sql_第3张图片

2,之后我们在application.yml中配置mapper文件夹的路径

mybatis-plus:
  mapper-locations: classpath:mapper/*.xml

3,就可以在AdminMapper.xml中写sql语句了,写法和Mybatis一样




    

4,编写测试类

package scrm;

import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
import scrm.mapper.AdminMapper;
import scrm.model.entity.Admin;

import javax.annotation.Resource;
import java.util.List;
import java.util.Map;

@SpringBootTest
public class Canal {

    @Resource
    AdminMapper adminMapper;

    @Test
    public void createrList(){
        List> mapList  = adminMapper.getAll();
        System.out.println("admin"+mapList);
    }
}

5,输出结果:
image.png

备注:在这篇文章收到了启发:https://blog.csdn.net/qq_4266...

你可能感兴趣的:(Mybatis Plus使用XML编写自定义sql)