学堂 学堂 学堂公众号手机端

在MyBatis中,传入多个参数类型通常有两种方式: 使用Map封装多个参数:将多个参数封装到一个Map中,然后将Map作为参数传入Mapper方法

lewis 2年前 (2023-12-09) 阅读数 6 #技术

在MyBatis中,传入多个参数类型通常有两种方式:

  1. 使用Map封装多个参数:将多个参数封装到一个Map中,然后将Map作为参数传入Mapper方法。在Mapper方法中可以通过指定的key来获取对应的参数值。
publicinterfaceUserMapper{ List<User>selectUsersByCondition(Map<String,Object>params); }

在MapperXML文件中,可以通过${key}的方式来获取参数值:

<selectid="selectUsersByCondition"parameterType="map"resultType="User"> SELECT*FROMuser WHEREname=#{name}ANDage=#{age} </select>

然后在调用Mapper方法时,传入一个包含多个参数的Map:


Map<String,Object>params=newHashMap<>(); params.put("name","Alice"); params.put("age",18); List<User>users=userMapper.selectUsersByCondition(params);
  • 使用@Param注解指定参数名:在Mapper方法中使用@Param注解为每个参数指定参数名,然后在MapperXML文件中使用指定的参数名来获取参数值。
  • publicinterfaceUserMapper{ List<User>selectUsersByCondition(@Param("name")Stringname,@Param("age")intage); }

    在MapperXML文件中,可以通过#{parameterName}的方式来获取参数值:

    <selectid="selectUsersByCondition"resultType="User"> SELECT*FROMuser WHEREname=#{name}ANDage=#{age} </select>

    然后在调用Mapper方法时,传入多个参数并指定参数名:

    List<User>users=userMapper.selectUsersByCondition("Alice",18);

    以上是两种常用的方式来传入多个参数类型到MyBatis中。选择其中一种方式来传入多个参数取决于个人喜好和项目需求。

    版权声明

    本文仅代表作者观点,不代表博信信息网立场。

    热门