本文为博主原创,未经允许不得转载:
mybatis plus 使用过程中已经很大程度提升了我们开发的效率,因为它内部已经对单表的操作进行了完美的封装,但是关联表操作时,
这时就需要自己定义sql,自定义实现。
1.在idea中配置 mybatis sql 映射文件的模版。步骤如下图:
其中的模版如下:
<?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="">
<select id="" resultType="" parameterType="" >
</select>
</mapper>
2.在mapper接口中添加自定义的方法,并在对应的 mybatis sql文件中自定义sql。
@Repository
//@Mapper
public interface UserMapper extends BaseMapper<User> {
User specialQueryUser();
}
sql文件如下:
<?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.example.demo.mapper.UserMapper">
<select id="specialQueryUser" resultType="com.example.demo.entity.User">
select * from user limit 1
</select>
</mapper>
3.配置文件中配置sql文件扫描路径:
本地项目结构如图:
# 配置sql打印
mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl
# 配置sql文件路径
mybatis-plus.mapper-locations=classpath:mapper/*Mapper.xml
4.封装test测试:(具体可参考 搭建 spring boot + mybatis plus 项目框架并进行调试)
本地调试运行的截图如下: