mybatis-plus 下建立 联合查询,用xml
在 resource mapper下建立 user.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="cn.taotao.dao.UserDao"> <resultMap id="MyUser" type="cn.taotao.domain.User"> <id column="id" jdbcType="INTEGER" property="id"></id> <result column="name" jdbcType="VARCHAR" property="name"></result> <result column="pid" jdbcType="INTEGER" property="pid"></result> <association property="pUser" javaType="cn.taotao.domain.User"> <id column="pid" property="id"></id> <result column="pname" jdbcType="VARCHAR" property="name"></result> </association> </resultMap> <select id="getOne" resultType="cn.taotao.domain.User"> select * from tbl_test where id = #{id} </select> <select id="getAll" resultType="cn.taotao.domain.User"> select * from tbl_test </select> <!-- @Select("select a.id,a.name,b.name as pname,a.pid as pid from tbl_test as a,tbl_test as b where a.id =${ew} and a.pid = b.id")--> <!-- @Results({--> <!-- @Result(id =true,property = "id",column = "id"),--> <!-- @Result(property = "name" ,column = "name"),--> <!-- @Result(javaType = User.class,property = "pUser" ,column = "pid",one=@One(select="cn.taotao.UserDao.getOne"))--> <!-- })--> <select id="findAll" resultMap="MyUser"> select a.id,a.name,b.name as pname,a.pid as pid from tbl_test as a,tbl_test as b where a.pid > ${ew} and a.pid = b.id </select> </mapper>
dao
public interface UserDao extends BaseMapper<User> { List<User> findAll(@Param("ew") Integer id); User getOne(@Param("id") Integer id); List<User> getAll(); }
yml
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/test
username: root
password: xxxxx
mybatis-plus:
configuration:
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
mapper-locations: classpath*:/mapper/**/*.xml
返回结果
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)