首页 > 其他分享 > Mybatis中传递多个参数的4种方法

Mybatis中传递多个参数的4种方法

时间:2023-07-19 13:55:12浏览次数:34  
标签:传参法 里面 Param 传递 参数 Mybatis 方法

前言

现在大多项目都是使用Mybatis了,但也有些公司使用Hibernate。使用Mybatis最大的特性就是sql需要自己写,而写sql就需要传递多个参数。面对各种复杂的业务场景,传递参数也是一种学问。

下面给大家总结了以下几种多参数传递的方法。

方法1:顺序传参法(不推荐)

#{}里面的数字代表你传入参数的顺序。

这种方法不建议使用,sql层表达不直观,且一旦顺序调整容易出错。

方法2:@Param注解传参法(推荐)

#{}里面的名称对应的是注解 @Param括号里面修饰的名称。

这种方法在参数不多的情况还是比较直观的,推荐使用。

  1.   当接口中只有一个参数(并且没有用@Param())时候,需要在xml中添加响应的参数类型parameterType;
  2.    
  3.   如果是多个参数(每个参数都是用@Param())的时候,就不会去读参数类型parameterType,
  4.   直接取得参数里面的值。

方法3:Map传参法(推荐)

#{}里面的名称对应的是 Map里面的key名称。

这种方法适合传递多个参数,且参数易变能灵活传递的情况。

方法4:Java Bean传参法(推荐)

#{}里面的名称对应的是 User类里面的成员属性。

这种方法很直观,但需要建一个实体类,扩展不容易,需要加属性,看情况使用。

标签:传参法,里面,Param,传递,参数,Mybatis,方法
From: https://www.cnblogs.com/tiancai/p/17565380.html

相关文章

  • IOS开发-OC页面跳转传递参数
    使用OC进行IOS开发页面跳转传递参数的思路:1.在AppDelegate.h中定义一个可变词典2.在AppDelegate.m中初始化该可变词典3.向字典中添加要传递的参数4.在目标页面拿到参数 1.在AppDelegate.h中定义一个可变词典#import<UIKit/UIKit.h>@interfaceAppDelegate:UIRespo......
  • shutdown 命令 新功能 加参数 重启进入BIOS 加参数 重启进入启动选项
    如上图,shutdown/r/fw注释:此命令,运行后,作用:重启进入BIOS......
  • jdbc-plus是一款基于JdbcTemplate增强工具包,基于JdbcTemplate已实现分页、多租户、动
    ......
  • MyBatis的SQL执行结果和客户端执行结果不一致问题排查
    1.代码中MyBatiesPlus执行的结果,如下图,handle字段中U后面是C2.相同sql拷贝到客户端中查询出的结果,如下图,handle字段U后面是B 原因:有程序去更改handle,把handle改为了带有C的值,但是在报错后,程序进行了回滚总结:代码中查询的sql的结果和客户端查询的结果不一致,应考虑程序执行过......
  • Revit二次开发-创建用户只读的共享参数
      在族环境里面绑定共享参数,并且用户在属性面板不可修改参数值[Transaction(TransactionMode.Manual)]publicclassSharedParameters:IExternalCommand{privatereadonlystring_desktop=Environment.GetFolderPath(Environment.SpecialFolder.Desk......
  • Kafka 集群参数配置介绍
    目录Broker端存储信息相关参数ZooKeeper相关参数Topic相关参数数据存留相关参数Topic级别参数保存消息JVM参数操作系统参数文件描述符限制文件系统类型Swappiness提交时间Broker端Broker端参数也被称为静态参数(StaticConfigs),必须在Kafka的配置文件server.properties......
  • c++ 参数引用传递
    1#include<iostream>2#include<thread>3#include<windows.h>4usingnamespacestd;5voidA(int&a){6cout<<"address"<<&a<<endl;;7cout<<"value"<<a......
  • CURL常用参数
    CURLcurl-XPOST-i'http://10.25.5.36/service/api/v1/province/registerSourceQuery'-H"Content-Type:application/json"-d'{"messageHeader":{"accessAccount":"43198521900","sign":"43198......
  • 在 Windows Server 2022 中,可以通过调整注册表来修改内核参数。以下是一些常见的内核
    在WindowsServer2022中,可以通过调整注册表来修改内核参数。以下是一些常见的内核参数调整在WindowsServer2022中,可以通过修改注册表来调整TCP/IP栈参数、TCP策略和文件系统缓存。请注意,对注册表的更改需要谨慎操作,建议在进行更改之前备份注册表以及系统状态。调整线......
  • HandlerMethodArgumentResolver方法参数解析器的使用
    一、使用场景介绍HandlerMethodArgumentResolver,中文称为方法参数解析器,是SpringWeb(SpringMVC)组件中的众多解析器之一,主要用来对Controller中方法的参数进行处理。在一般的接口调用场景下,每次调用Controller都需要检查请求中的token信息,并根据token还原用户信息,然后将用户信息封......