Mybatis配置文件中Select元素标签输入参数有多少种输入方式呢?

Select元素标签输入方式

基本数据类型

字符串类型

Map 类型

Java bean 类型

案例实操

输入参数分类

基本类型,字符串,java bean,map,数组(删除操作时体现),List(添加时体现)等每种情况定义如下

基本数据类型

Statement 定义

<!-- 查询客户-->

<selectid="queryCustomerById"parameterType="int"resultType="com.xxx.pojo.Customer">

   SELECT id,user_name 'userName',user_balance 'userBalance' FROM  yg_customer WHERE  id=#{id}

</select>

CustomerDao方法定义

CustomerqueryCustomerById(intid);

字符串类型

Statement 定义

<!-- 查询客户-->

<selectid="queryCustomerByName"parameterType="string"resultType="com.xxx.pojo.Customer">

   SELECT id,user_name 'userName',user_balance 'userBalance' FROM  yg_customer WHERE  user_name=#{userName}

</select>

Dao 方法定义

CustomerqueryCustomerById(intid);

Map 类型

Statement 定义

<!-- 输入参数为 map 类型 -->

<!-- 查询客户-->

<selectid="queryCustomerByName"parameterType="map"resultType="com.xxx.pojo.Customer">

   SELECT id,user_name 'userName',user_balance 'userBalance' FROM  yg_customer WHERE  user_name=#{userName}

</select>

Dao 方法定义

CustomerqueryCustomerByName(Map<String,Object>userName);

Java bean 类型

Statement 定义

<!-- 输入参数为 java bean 类型 -->

<selectid="queryCustomerByParams"parameterType="customer"resultType="customer">

   SELECT id,user_name 'userName',user_balance 'userBalance' FROM  yg_customer WHERE  user_name=#{userName}

</select>

Dao方法定义

CustomerqueryCustomerByParams(Customercustomer);

####

扩展

结果类型分类

基本数据类型,字符串,JavaBean,Map,List等

基本数据类型

Statement定义

<!-- 结果类型为基本数据 -->

<selectid="queryCustomerAccount"resultType="int">

   select count(1) from yg_customer

</select>

Dao 方法定义与对应实现

intqueryCustomerAccount();

字符串类型

Statement定义

<!-- 结果类型为字符串 -->

<selectid="queryCustomerNameById"resultType="string"parameterType="int">

   select user_name from yg_customer WHERE id=#{id}

</select>

Dao 方法定义

StringqueryCustomerNameById(intid);

Java Bean

Statement定义

<selectid="queryUserByUser"parameterType="user"resultType="user">

   select id,user_name as userName,user_pwd as userPwd from user where id=#{id}

</select>

List

Statement 定义

<resultMaptype="user"id="user_map">

<resultcolumn="id"property="id"/>

<resultcolumn="user_name"property="userName"/>

<resultcolumn="user_pwd"property="userPwd"/>

</resultMap>

<sqlid="user_column">

   id,user_name,user_pwd

</sql>

<selectid="queryUserNyName2"parameterType="string"resultMap="user_map">

select<includerefid="user_column"/>

   from user where user_name like concat("%",#{userName},"%")

</select>

Map 类型数据

Statement 定义

<!-- 结果类型为map -->

<selectid="queryUserByIdReturnMap"parameterType="int"resultType="map">

   select id,user_name as userName,user_pwd as userPwd from user where id=#{id}

</select>

###

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容