mybatis框架配置文件之联表查询


mybatis框架在接口的实现上, 用了配置文件来编写,常用的一些简单的增删查改方法,请看上一篇blog;

本次总结联表查询:

在某些情况下,个人比较喜欢玩DOTA1,玩了几年了,很多人流行DOTA2了,只是个人喜欢经典而已,我们就以DOTA来举例,游戏里有几种属性的Hero: 敏捷、力量、智力

在每种属性下的Hero都会有几十个不同的Hero,一旦我们需要通过属性来查询所有的Hero的时候,这个时候,就应该联表查询,每个Hero的表里都会有属性的外键,当然这里设计的话,肯定Hero是属于从表,这个时候,在配置文件上就应该这样去写:


<select id="findHeroBytypeId" parameterType="java.lang.Integer" resultMap="findHeroMap">
		select id,hero_name,fk_type_id  from t_hero where fk_type_id=#{typeId}
</select>

<resultMap type="HeroBean" id="findHeroMap">
        <result property="id" column="id" javaType="java.lang.Integer"/>
        <result property="heroName" column="hero_name" javaType="java.lang.String"/>
        <association property="type" column="fk_type_id" select="com.eric.dao.IGameTypeMapper.findById"
        javaType="GameTypeBean"></association>
    </resultMap>

在自定义映射关系里,就要去调用其他配置文件的函数方法,才能得到所有拥有该属性的值。


另外,还有关于 Sqlsession 和 缓存机制 的一些理解,请看下一篇blog

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值