其他分享
首页 > 其他分享> > Mybatis学习第21节 -- 扩展结果集

Mybatis学习第21节 -- 扩展结果集

作者:互联网

大部分现实应用中我们并不需要把数据库中的整行数据都拉出来, 所以要做扩展结果集 笔记: 在实际项目过程中, 先用逆向工程自动生成, 然后再做扩展结果集来满足大部分的现实需要   本节内容应该注意扩展结果集的命名方式

创建一个扩展类ShopCustom, (这样命名可以和Shop在项目树里面排列在一起)

package io.github.coinsjack.pojo;

public class ShopCustom extends Shop {

private String shopName;
private String shopDesc;

public ShopCustom() {
}

创建一个mapper接口 ShopMapperCustom 

package io.github.coinsjack.dao;

import io.github.coinsjack.pojo.ShopCustom;

public interface ShopMapperCustom {

ShopCustom getShopById(Integer id);

}

创建对应的映射文件

<?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="io.github.coinsjack.dao.ShopMapperCustom">

<cache/>
 
    <resultMap id="shopResultMap" type="ShopCustom">
<id column="shop_id" property="id" ></id>
<result column="shop_name" property="shopName"></result>
<result column="shop_desc" property="shopDesc"/>
</resultMap>

<select id="getShopById" parameterType="int" resultMap="shopResultMap" >
select `shop_id`, `shop_name`, `shop_desc`
from tb_shop
where `shop_id` = #{id}
</select>
</mapper>
测试
@Test
public void testGetShopByIdCustom() {
SqlSession session = MyBatisUtil.getSqlSession();
ShopMapperCustom mapper = session.getMapper(ShopMapperCustom.class);
System.out.println(mapper.getShopById(29));
session.close();
}

结果

2018-12-29 11:33:32,656 [main] DEBUG [io.github.coinsjack.dao.ShopMapperCustom] - Cache Hit Ratio [io.github.coinsjack.dao.ShopMapperCustom]: 0.0
2018-12-29 11:33:33,128 [main] DEBUG [io.github.coinsjack.dao.ShopMapperCustom.getShopById] - ==> Preparing: select `shop_id`, `shop_name`, `shop_desc` from tb_shop where `shop_id` = ? 
2018-12-29 11:33:33,237 [main] DEBUG [io.github.coinsjack.dao.ShopMapperCustom.getShopById] - ==> Parameters: 29(Integer)
2018-12-29 11:33:33,309 [main] DEBUG [io.github.coinsjack.dao.ShopMapperCustom.getShopById] - <== Total: 1
ShopCustom{shopName='暴漫奶茶店', shopDesc='过来喝喝就知道啦,你是我的奶茶'}


Java知识点 如果父类实现了某接口,子类也会继承接口的实现

标签:shop,coinsjack,github,21,33,扩展,ShopMapperCustom,io,Mybatis
来源: https://www.cnblogs.com/litran/p/10546247.html