Mybatis使用in并返回返回List

简介: Mybatis使用in并返回返回List

XXXXMapper.java

/**
   * 通过年级ID反推学部ID
   * @param ids
   * @return 返回学部ID
   */
  List<Integer> seleByIds(@Param("ids") Set<String> ids);

 XXXXMapper.xml

  <select id="seleByIds" resultType="java.lang.Integer" parameterType="java.lang.String">
    SELECT
      group_id
    FROM
      `campus_grade` AS cg
    WHERE cg.`id` IN
    <foreach collection="ids" index="index" item="item" open="(" close=")" separator=",">
      #{item}
    </foreach>
      AND cg.`del_flag` = 0
    GROUP BY group_id
 
  </select>

多个参数:

 
List<User> selectByIdSet(@Param("name")String name, @Param("ids")String[] idList);
 
<select id="selectByIdSet" resultMap="BaseResultMap" parameterType="map">
  SELECT
  <include refid="Base_Column_List" />
  from t_user
  WHERE  name=#{name,jdbcType=VARCHAR} and id IN
  <foreach collection="idList" item="id" index="index"
       open="(" close=")" separator=",">
    #{id}
  </foreach>
</select>

说明:

#说明
foreach语句中, collection属性的参数类型可以使:List、数组、map集合
​collection: 必须跟mapper.java中@Param标签指定的元素名一样
​item: 表示在迭代过程中每一个元素的别名,可以随便起名,但是必须跟元素中的#{}里面的名称一样。
index:表示在迭代过程中每次迭代到的位置(下标)
open:前缀, sql语句中集合都必须用小括号()括起来
​close:后缀
separator:分隔符,表示迭代时每个元素之间以什么分隔

 

相关文章
|
JSON JavaScript 定位技术
echarts:从github及其镜像下载china.js和china.json
echarts:从github及其镜像下载china.js和china.json
7877 0
|
1月前
|
人工智能 自然语言处理 安全
Claude Code 全攻略:命令大全 + 实战工作流(建议收藏)
本文介绍了Claude Code终端AI助手的使用指南,主要内容包括:1)常用命令如版本查看、项目启动和更新;2)三种工作模式切换及界面说明;3)核心功能指令速查表,包含初始化、压缩对话、清除历史等操作;4)详细解析了/init、/help、/clear、/compact、/memory等关键命令的使用场景和语法。文章通过丰富的界面截图和场景示例,帮助开发者快速掌握如何通过命令行和交互界面高效使用Claude Code进行项目开发,特别强调了CLAUDE.md文件作为项目知识库的核心作用。
30132 66
Claude Code 全攻略:命令大全 + 实战工作流(建议收藏)
|
NoSQL Java Redis
Springboot使用Redis实现分布式锁
通过这些步骤和示例,您可以系统地了解如何在Spring Boot中使用Redis实现分布式锁,并在实际项目中应用。希望这些内容对您的学习和工作有所帮助。
1420 83
|
前端开发 Java easyexcel
SpringBoot操作Excel实现单文件上传、多文件上传、下载、读取内容等功能
SpringBoot操作Excel实现单文件上传、多文件上传、下载、读取内容等功能
1089 8
|
Java API 存储
Java如何对List进行排序?
【7月更文挑战第26天】
2240 9
Java如何对List进行排序?
|
Java 数据挖掘 数据库连接
SpringBoot基本配置详解
SpringBoot基本配置详解
|
存储 缓存 Java
Spring缓存注解【@Cacheable、@CachePut、@CacheEvict、@Caching、@CacheConfig】使用及注意事项
Spring缓存注解【@Cacheable、@CachePut、@CacheEvict、@Caching、@CacheConfig】使用及注意事项
5208 2
|
存储 IDE Java
Java“NoClassDefFoundError”解决
Java中的“NoClassDefFoundError”错误通常发生在尝试访问某个类时,该类在编译时可用但在运行时找不到。解决方法包括:确保所有依赖库已正确添加到类路径中,检查类名和包名是否正确,以及清理并重新构建项目。
4496 3
|
JavaScript
Vue与原生JS中方法调用
Vue与原生JS中方法调用
327 0