Mybatis参数深入(parameterType)、输出结果封装(resultType)(4)

一、parameterType 配置参数

1、概述

指定输入参数类型,mybatis通过ognl从输入对象中获取参数值拼接在sql中。

SQL 语句传参,使用标签的 parameterType 属性来设定。
该属性的取值可以是基本类型引用类型(如:String 类型),还可以是实体类类型(POJO 类)。 同时也可以使用实体类的包装类,意思就是该实体类数据类型是包装类的成员变量。

2、注意事项

  • 基本类型和 String 我们可以直接写类型名称(String和string都行) ,也可以使用包名 . 类名的方式 ,例如 : java.lang.String。
  • 实体类类型,目前我们只能使用全限定类名。
    究其原因,是 mybaits 在加载时已经把常用的数据类型注册了别名,从而我们在使用时可以不写包名, 而我们的实体类并没有注册别名,所以必须写全限定类名。注册后可以直接写类名类型(大小写都行)。

3、实体类注册别名

在核心配置文件SqlMapConfig.xml中

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd">
<!--dtd是对xml配置标签与属性的约束-->
<configuration>
    <typeAliases>
        <!--给单个类起别名-->
        <!--<typeAlias type="cn.cyl.bean.User" alias="user"></typeAlias>-->
        <!--扫描包,给该包下的所有类起别名,格式为类名首字母小写-->
        <package name="cn.cyl.bean"/>
    </typeAliases>
</configuration>

二、resultType 配置结果类型

  1. resultType 属性可以指定结果集的类型,它支持基本类型实体类类型
  2. resultType 和 parameterType 一样,如果注册过类型别名的,可以直接使用别名没有注册过的必须使用全限定类名。
  3. 同时,当resultType 属性是实体类名称时,还有一个要求,实体类中的属性名称必须和查询语句中的列名保持一致,否则无法实现封装。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值