Mybatis关联查询之三
2024-08-30 10:24:41
MyBatis的关联查询之自关联
自关联
一、entity实体类
public class City {
private Integer cid;
private String cname;
private Integer pid; //自关联集合 代表的是当前City对象的自己集合
public List<City> childCitys; public Integer getCid() {
return cid;
} public void setCid(Integer cid) {
this.cid = cid;
} public String getCname() {
return cname;
} public void setCname(String cname) {
this.cname = cname;
} public Integer getPid() {
return pid;
} public void setPid(Integer pid) {
this.pid = pid;
} public List<City> getChildCitys() {
return childCitys;
} public void setChildCitys(List<City> childCitys) {
this.childCitys = childCitys;
} @Override
public String toString() {
return "City{" +
"cid=" + cid +
", cname='" + cname + '\'' +
", pid=" + pid +
", childCitys=" + childCitys +
'}';
}
}
二、dao层
//自关联 查询河南省下所有子集
public City getCityAndChild(Integer cid);
三、dao.xml 小配置
<!--自关联-->
<resultMap id="CityAndChildCity" type="com.marketsys.entity.City">
<id column="cid" property="cid"></id>
<result column="cname" property="cname"></result>
<result column="pid" property="pid"></result>
<collection property="childCitys" ofType="com.marketsys.entity.City" select="getCity" column="cid">
<id column="cid" property="cid"></id>
<result column="cname" property="cname"></result>
<result column="pid" property="pid"></result>
</collection>
</resultMap>
<select id="getCityAndChild" resultMap="CityAndChildCity">
select * from city where cid=#{cid}
</select>
<select id="getCity" resultMap="CityAndChildCity">
select * from city where pid=#{cid}
</select>
四、test测试类
SqlSession sqlSession= MybatisUtil.getSqlSession();
URoleTestDao mapper=sqlSession.getMapper(URoleTestDao.class); //自关联
@Test
public void test4(){
City city = mapper.getCityAndChild(410000);
System.out.println(city.toString());
}
最新文章
- 终于遇到app不兼容,你遇到了么?
- Jquery通过Ajax方式来提交Form表单
- 你必须知道的.NET之特性和属性(转)
- Sql 常见面试题
- android从资源文件中读取文件流显示
- 在xml中添加array
- Shell教程2-变量
- UVA 12897 Decoding Baby Boos 暴力
- ASP.NET MVC:多模板支持
- 微通道产品经理Grover采访:美国的微通道设计
- Android 4.4 KitKat NotificationManagerService使用具体解释与原理分析(一)__使用具体解释
- 【java】内存流:java.io.ByteArrayInputStream、java.io.ByteArrayOutputStream、java.io.CharArrayReader、java.io.CharArrayWriter
- 炫酷线条动画--svg
- MYSQL时间盲住
- 关于MongoDB数据库的日志解析
- All about Using Burp Suite
- ModelSerializer Meta设置
- STM32F407 ------ 使用定时器实现精确延时
- 配置一个 Confluence 6 环境
- Inside The C++ Object Model(三)
热门文章
- python 基础学习笔记(8)--装饰器
- windows的两种sshd服务器安装
- mysql数据库创建用户、赋权、修改用户密码
- BitMap原理
- Mysql数据基本操作(增、删、改、查)
- Java入门系列之包装类(四)
- 【nodejs原理&;源码赏析(4)】深度剖析cluster模块源码与node.js多进程(上)
- 阿里面试实战题1----TreeSet,HashSet 区别
- Dynamics 365触发Microsoft Flow自动生成PDF并作为附件送邮件
- Command CompileSwiftSources failed with a nonzero exit code