mybatis关联查询
来源:互联网 发布:软件企业评估管理办法 编辑:程序博客网 时间:2024/06/05 22:39
创建一个country表和一个minister表。
create table country(
cid int primarykey ,
cname varchar(20) not null
);
create table minister(
mid int primarykey ,
mname varchar(20) not null ,
countryid int not null
)
javabean:
country类
:
package com.cbh.beans;import java.util.Set;public class Country {private Integer cid;private String cname;//关联属性private Set<Minister> minister;@Overridepublic String toString() {return "Country [cid=" + cid + ", cname=" + cname + ", minister="+ minister + "]";}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 Set<Minister> getMinister() {return minister;}public void setMinister(Set<Minister> minister) {this.minister = minister;}}minister类:
package com.cbh.beans;public class Minister {private Integer mid;private String mname;public Integer getMid() {return mid;}public void setMid(Integer mid) {this.mid = mid;}public String getMname() {return mname;}public void setMname(String mname) {this.mname = mname;}@Overridepublic String toString() {return "Minister [mid=" + mid + ", mname=" + mname + "]";}}
dao:
package com.cbh.dao;import com.cbh.beans.Country;public interface ICountryDao {Country selectCountryById(int cid);}mapper:
<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd"><mapper namespace="com.cbh.dao.ICountryDao"><resultMap type="Country" id="countryMapper"><id column="cid" property="cid" /><result column="cname" property="cname" /><collection property="minister" ofType="Minister"><id column="mid" property="mid" /><result column="mname" property="mname" /></collection></resultMap><select id="selectCountryById" resultMap="countryMapper">select cid,cname,mid,mname from country,minister where countryId=cid andcid=#{xxx}</select></mapper>
mapper需要仔细的看由于是关联查询mapper中resulttype存在两个对象在这里是使用的resultmap
测试类:
package com.cbh.test;import org.apache.ibatis.session.SqlSession;import org.junit.Before;import org.junit.Test;import com.cbh.Utils.MybatisUtils;import com.cbh.beans.Country;import com.cbh.dao.ICountryDao;public class mytest {private ICountryDao dao;private SqlSession sqlSession;@Beforepublic void Befroe(){sqlSession=MybatisUtils.getSqlSession();dao=sqlSession.getMapper(ICountryDao.class);}@Afterpublic void after(){if(sqlsession!=null){sqlsession.close();}}@Testpublic void test1(){Country country=dao.selectCountryById(2);System.out.println(country);}}mybatis.xml由于没有改动所以就没必要写出来。对于不明白可以看我的mybatis两个重要配置文件中有mybatis的具体内容。0 0
- mybatis关联查询
- mybatis表关联查询
- Mybatis关联表查询
- MyBatis关联查询
- Mybatis关联查询
- MyBatis 关联查询
- mybatis实现关联查询
- Mybatis如何关联查询
- mybatis 关联sql查询
- MyBatis关联查询(一对一)
- mybatis 关联查询
- MyBatis 关联查询
- mybatis一对一关联查询
- Mybatis关联查询
- Mybatis的关联查询
- MyBatis关联查询
- Mybatis一对一关联查询
- mybatis的关联查询
- 分布式计算开源框架Hadoop入门实践(二)
- docker 常用命令
- 如何使输入框input只能输入数字
- 4824: [Cqoi2017]老C的键盘
- Python-regular expressions exercises (Core Python)
- mybatis关联查询
- Android内核开发:系统编译输出的镜像文件
- LeetCode算法题目:Binary Tree Maximum Path Sum
- VS 2013插件
- 【PHP基础】php上传文件类
- Java事务+atomikos[jta]
- 设计模式之1--简单工厂模式
- JS时间对象创建及比较大小
- 使用jQuery操作DOM