Mybatis传递多个参数的4种方式
现在大多项目都是使用Mybatis了,但也有些公司使用Hibernate。使用Mybatis最大的特性就是sql需要自己写,而写sql就需要传递多个参数。面对各种复杂的业务场景,传递参数也是一种学问。
下面给大家总结了以下几种多参数传递的方法。
方法1:顺序传参法
public User selectUser(String name, int deptId);<select id="selectUser" resultMap="UserResultMap">select * from userwhere user_name = #{0} and dept_id = #{1}
</select>
#{}里面的数字代表你传入参数的顺序。
这种方法不建议使用,sql层表达不直观,且一旦顺序调整容易出错。
方法2:@Param注解传参法
public User selectUser(@Param("userName") String name, int @Param("deptId") deptId);<select id="selectUser" resultMap="UserResultMap">select * from userwhere user_name = #{userName} and dept_id = #{deptId}
</select>
#{}里面的名称对应的是注解 @Param括号里面修饰的名称。
这种方法在参数不多的情况还是比较直观的,推荐使用。
方法3:Map传参法
public User selectUser(Map<String, Object> params);<select id="selectUser" parameterType="java.util.Map" resultMap="UserResultMap">select * from userwhere user_name = #{userName} and dept_id = #{deptId}
</select>
#{}里面的名称对应的是 Map里面的key名称。
这种方法适合传递多个参数,且参数易变能灵活传递的情况。
方法4:Java Bean传参法
public User selectUser(User params);<select id="selectUser" parameterType="com.test.User" resultMap="UserResultMap">select * from userwhere user_name = #{userName} and dept_id = #{deptId}
</select>
#{}里面的名称对应的是 User类里面的成员属性。
这种方法很直观,但需要建一个实体类,扩展不容易,需要加属性,看情况使用。
Mybatis传递多个参数的4种方式相关推荐
- mybatis传递多个参数_Mybatis传递多个参数的4种方式(干货)
现在大多项目都是使用Mybatis了,但也有些公司使用Hibernate.使用Mybatis最大的特性就是sql需要自己写,而写sql就需要传递多个参数.面对各种复杂的业务场景,传递参数也是一种学问. ...
- 表单提交和超链接请求传递参数的几种方式
表单提交和超链接请求传递参数的几种方式 这段时间在使用easy-ui的datagrid,他有自己提交表单的方式,所以就整理整理页面对参数的提交方式: 注:下面代码都已经过测试. 1. HTML提交表单 ...
- WebAPI Post模式下传递、接收参数的几种方法
创建实体类 前一篇博客讲了Get模式下的传递.接收参数的几种方法,现在来介绍一下Post模式下传递.接收参数的几种方法.首先还是老样子,创建一个空的ASP.NET WebAPI工程,在Models文件 ...
- springboot 获取控制器参数的几种方式
这里介绍springboot 获取控制器参数有四种方式 1.无注解下获取参数 2.使用@RequestParam获取参数 3.传递数组 4.通过URL传递参数 无注解下获取参数 无注解下获取参数,需要 ...
- SpringMVC获取参数的几种方式
SpringMVC获取参数的几种方式 前言: 年末了,忙了一年了却发现系统的整理的东西很少,一些基础的东西都未做整理,这里就将它随便整理一下,增加一些印象,当然在网上看到一些好的资料也会整理下来以备后 ...
- php解析url并得到url中的参数及获取url参数的四种方式
本文给大家介绍php解析url并得到url中的参数及获取url参数的四种方式,涉及到将字符串参数变为数组,将参数变为字符串的相关知识,本文代码简单易懂,感兴趣的朋友一起看看吧 下面一段代码是php解析 ...
- 织梦 php 传值,php获取post参数的几种方式
php获取post参数的几种方式,ajax提交数据的几种类型,PHP默认识别的数据类型是application/x-www.form-urlencoded标准的数据类型. 1.$_POST['para ...
- python命令行模式怎么输入_python获得命令行输入的参数的两种方式
外部直接执行python文件时,我们有时需要获得命令行的参数6ok免费资源网 获得命令行参数的两种方式6ok免费资源网 1.通过sys.argv6ok免费资源网 sys.argv:获得一个参数列表,第 ...
- C语言 二维数组作为函数参数的4种方式
前言 多维数组中,二维数组是最常用的一种.在C语言编程中,二维数组的定义.取值以及赋值都比较容易,与一维数组类似.然而,在将二维数组作为函数参数传递时,参数结构较复杂,难以理解.本文章是实用型文章,注 ...
最新文章
- CodeForces 157A Game Outcome
- 使用Helm 在容器服务k8s集群一键部署wordpress
- 兰州理工大学计算机考研真题,2017年兰州理工大学计算机与通信学院893计算机操作系统考研题库...
- 服务器虚拟化的毕业设计,基于Vmware的服务器虚拟化管理毕业论文.doc
- alexa api php,php 读取 alexa信息
- Abp vnext Web应用程序开发教程 6 —— 作者:领域层
- 跨域请求——jsonp与cors
- 创建ASP.NET Core MVC应用程序(3)-基于Entity Framework Core(Code First)创建MySQL数据库表
- 7-16 装箱问题 (20 分)
- ubuntu mongodb安装
- 【180928】小飞机打陨石游戏源码
- Qt学习之路系列教程目录
- html中如何写平方根等,excel平方根
- ARM920T的MMU与Cache ——转载
- c语言列宽作用,c语言|格式化输入输出详解
- 计算机专业课911,2018年北京物资学院911计算机学科专业基础综合考研复习资料...
- 第979期机器学习日报(2017-05-24)
- Java 8 字符串和时间相互转换
- python爬取网页停止工作_python人员api停止工作
- linux 超级作用域,linux dhcp超级作用域配置