MyBatis-Plus自定义SQL
一心同学 人气:0前言
当我们在开发过程中,如果MyBatis-Plus中的SQL语句并不能满足我们的需求,那么我们可以在XML文件中自定义SQL语句,这样的话我们就可以在MyBatis-Plus的基础上继续提高我们的开发效率了。本篇博客也将讲解如何在src/main/resource目录下和src/main/java目录下对XML的配置。
一、在src/main/resource目录下编写XML
1.1 目录结构
我们将UserMapper.xml放在resource下的mapper目录中,我的整个项目目录如下
1.2 编写实体类对应的Mapper接口
Tip:我们这里自定义了getAll()方法,获取全部用户的信息。
package com.yixin.mapper; import com.yixin.pojo.User; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.springframework.stereotype.Repository; import java.util.List; /** * <p> * Mapper 接口 * </p> * * @author yixin * @since 2022-01-17 */ @Repository public interface UserMapper extends BaseMapper<User> { public List<User> getAll(); }
1.3 编写UserMapper.xml
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.yixin.mapper.UserMapper"> <select id="getAll" resultType="com.yixin.pojo.User"> select * from user </select> </mapper>
1.4 在配置文件中扫描我们的xml配置的位置。
application.properties:
mybatis-plus.mapper-locations=classpath:/mapper/**.xml
1.5 测试
import org.springframework.boot.test.context.SpringBootTest; import java.io.InputStream; import java.util.ArrayList; import java.util.List; @SpringBootTest class AutoApplicationTests { @Autowired private UserMapper userMapper; @Test void test() { List<User> userList=userMapper.getAll(); System.out.println(userList); } }
结果:
可以发现,成功出现我们的信息了!
二、在src/main/java目录下编写XML
2.1 目录结构
TIp:在java下的mapeer目录中建立存放我们的xml配置的目录xml包
2.2 编写实体类对应的Mapper接口
package com.yixin.mapper; import com.yixin.pojo.User; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.springframework.stereotype.Repository; import java.util.List; /** * <p> * Mapper 接口 * </p> * * @author yixin * @since 2022-01-17 */ @Repository public interface UserMapper extends BaseMapper<User> { public List<User> getAll(); }
2.3 编写UserMapper.xml
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.yixin.mapper.UserMapper"> <select id="getAll" resultType="com.yixin.pojo.User"> select * from user </select> </mapper>
2.4 编写配置文件
application.properties:
mybatis-plus.mapper-locations=classpath:com/yixin/mapper/xml/UserMapper.xml
2.5
加载全部内容