栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

MyBatis中传入参数parameterType类型详解

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

MyBatis中传入参数parameterType类型详解

前言

Mybatis的Mapper文件中的select、insert、update、delete元素中有一个parameterType属性,用于对应的mapper接口方法接受的参数类型。本文主要给大家介绍了关于MyBatis传入参数parameterType类型的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。

1. MyBatis的传入参数parameterType类型分两种

   1. 1. 基本数据类型:int,string,long,Date;

   1. 2. 复杂数据类型:类和Map

2. 如何获取参数中的值:

   2.1  基本数据类型:#{参数} 获取参数中的值

   2.2  复杂数据类型:#{属性名}  ,map中则是#{key}

3.案例:

 3.1 基本数据类型案例

 
 id, car_dept_name, car_maker_name, icon,car_maker_py,hot_type 
  
  
  select 
   
  from common_car_make cm 
  where 1=1 
   
   and cm.id = #{id,jdbcType=DECIMAL} 
   
   
   and cm.car_dept_name = #{carDeptName,jdbcType=VARCHAR} 
   
   
   and cm.car_maker_name = #{carMakerName,jdbcType=VARCHAR} 
   
   
   and cm.hot_type = #{hotType,jdbcType=BIGINT} 
   
  ORDER BY cm.id 
  

  3.3 复杂类型--类类型

 
 update common_car_make 
  
   
  car_dept_name = #{carDeptName,jdbcType=VARCHAR}, 
   
   
  car_maker_name = #{carMakerName,jdbcType=VARCHAR}, 
   
   
  icon = #{icon,jdbcType=VARCHAR}, 
   
   
   car_maker_py = #{carMakerPy,jdbcType=VARCHAR}, 
   
   
   hot_type = #{hotType,jdbcType=BIGINT}, 
   
  
 where id = #{id,jdbcType=BIGINT} 
  

 3.4 复杂类型--map中包含数组的情况

 
 select distinct ajlcid from ebd_fh_ajlc where sorttime >= to_date(#{startdate,jdbcType=VARCHAR},'YYYY-MM-DD') and created_date=updated_date 
 and keyvalue in (select distinct companyname from ebd_fh_company_list where isupdate='0') 
  

案例二:

注解javaBean,@Param(value="dateVo") DateVo dateVo;则需要注意编写的参数

List selectIds(@Param(value="dateVo")DateVo dateVo); 

对应的mapping文件

 

至于要说优缺点的话,看个人喜好

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对考高分网的支持。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/141058.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号