mybatis学习(51):扩展集

大部分现实应用中我们并不需要把数据库中的整行数据都拉出来, 所以要做扩展结果集

笔记: 在实际项目过程中, 先用逆向工程自动生成, 然后再做扩展结果集来满足大部分的现实需要

本节内容应该注意扩展结果集的命名方式

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

 
    
  1. package io.github.coinsjack.pojo;

  2. public class ShopCustom extends Shop {

  3. private String shopName;

  4. private String shopDesc;

  5. public ShopCustom() {

  6. }

创建一个mapper接口 ShopMapperCustom 

 
    
  1. package io.github.coinsjack.dao;

  2. import io.github.coinsjack.pojo.ShopCustom;

  3. public interface ShopMapperCustom {

  4. ShopCustom getShopById(Integer id);

  5. }

创建对应的映射文件

 
    
  1. <?xml version="1.0" encoding="UTF-8" ?>

  2. <!DOCTYPE mapper

  3. PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"

  4. "http://mybatis.org/dtd/mybatis-3-mapper.dtd">

  5. <mapper namespace="io.github.coinsjack.dao.ShopMapperCustom">

  6. <cache/>

  7.  

 
    
  1. <resultMap id="shopResultMap" type="ShopCustom">

  2. <id column="shop_id" property="id" ></id>

  3. <result column="shop_name" property="shopName"></result>

  4. <result column="shop_desc" property="shopDesc"/>

  5. </resultMap>

  6. <select id="getShopById" parameterType="int" resultMap="shopResultMap" >

  7. select `shop_id`, `shop_name`, `shop_desc`

  8. from tb_shop

  9. where `shop_id` = #{id}

  10. </select>

  11. </mapper>

测试

 
    
  1. @Test

  2. public void testGetShopByIdCustom() {

  3. SqlSession session = MyBatisUtil.getSqlSession();

  4. ShopMapperCustom mapper = session.getMapper(ShopMapperCustom.class);

  5. System.out.println(mapper.getShopById(29));

  6. session.close();

  7. }

结果

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='过来喝喝就知道啦,你是我的奶茶'}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值