Mybatis 细节(3)select结果集

本文详细介绍了MyBatis中的结果映射方法,包括使用resultType自动映射数据库查询结果到实体类,以及通过resultMap手动指定字段与实体属性之间的映射关系,帮助开发者更好地理解和应用MyBatis。
摘要由CSDN通过智能技术生成
  1. select标签的resultType表明将查找到数据封装的类型,像这样,Emp是一个实体类
     <select id="findAll" resultType="com.lin.bean.Emp">
         SELECT * FROM tbl_employee
        </select>

    mybatis就会把数据库和pojo类中属性名字相同的列给他封装好,如果存在不一致的话也不会报错,总之就是那个一致就封装哪个。

  2. 如果列名不一致,又想要进行封装的话

    1. 可以在sql语句中使用别名进行转换,要注意这样一来那些列名一样的列如果想要封装的话也就要一起写上的了。

      
          <select id="findAll2Emp2" resultType="com.lin.bean.Emp2">
              select id as empId, last_name as empLastName, gender as empGender,email  , d_id as empdId from tbl_employee
          </select>

       

    2. 第二种方法就是使用resultMap啦,resultMap也不是什么高级的操作,就是自己定义了一个java列名和表列名对应的映射而已,语法是酱紫的。其中id表明这一列是主键, result就是一般的列,propety对应的是pojo类的属性名称,column对应是数据表的列名

       <resultMap id="emp2" type="com.lin.bean.Emp2">
              <id property="empId" column="id"/>
              <result property="empLastName" column="last_name"/>
              <result property="empGender" column="gender"/>
              <result property="email" column="email"/>
              <result property="empdid" column="d_id"/>
          </resultMap>
      

      使用:

       <select id="findAll2Emp2" resultMap="emp2">
      --         select id as empId, last_name as empLastName, gender as empGender,email  , d_id as empdId from tbl_employee
            select  * from tbl_employee
          </select>

       

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值