返回顶部
首页 > 资讯 > 精选 >MyBatis传入List集合查询数据问题怎么解决
  • 657
分享到

MyBatis传入List集合查询数据问题怎么解决

2023-07-05 02:07:47 657人浏览 泡泡鱼
摘要

这篇文章主要介绍“mybatis传入List集合查询数据问题怎么解决”,在日常操作中,相信很多人在MyBatis传入List集合查询数据问题怎么解决问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”MyBatis

这篇文章主要介绍“mybatis传入List集合查询数据问题怎么解决”,在日常操作中,相信很多人在MyBatis传入List集合查询数据问题怎么解决问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”MyBatis传入List集合查询数据问题怎么解决”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

    MyBatis传入List集合查询数据

    使用的是SSM框架数据库MySQL,做查询的时候传入List集合,使用sql语句的in方式查询数据

    主要有两点问题

    我的List集合是利用的另外一个语句查询出来的,传入参数是int类型,返回值是int类型的List集合:

    List<Integer> select(Integer id);
    <select id="select" resultType="java.util.List"    parameterType="java.lang.Integer">    select id    from section    where status='A'    and unit_id=#{id,jdbcType=INTEGER}</select>

    这是我第一次的时候使用的返回值类型(java.util.List),这种情况下在我执行的时候会报错:java.lang.UnsupportedOperationException

    其实这里如果我们是要返回指定类型的集合直接写java.lang.Integer(int类型)java.lang.String(字符串)等等就可以了,当然也可以自定义一个resultMap

    <select id="select" resultType="java.lang.Integer"    parameterType="java.lang.Integer">    select id    from section    where status='A'    and unit_id=#{id,jdbcType=INTEGER}</select>

    上面是通过一个id查询出List集合,下面是将查到的这个List集合放入查询条件中:

    List<Test> selectById(List<Integer> id);
    <select id="selectById" parameterType="java.util.List"    resultMap="BaseResultMap">    select * from test    where status = 'A'    and id in    <foreach collection="list" index="index" item="item" open="("        separator="," close=")">        #{item}    </foreach></select>

    上述的查询语句可以整合在一个sql语句中,这里为了创造list数据所以分开了。

    使用foreach 语句循环集合中的数据,item就是循环到的数据,如果你是一个复杂类型的数据做批量插入的话可以使用item.属性名 的方式获取对应值,类似于java的foreach循环语句,某些时候可能传入的是Array数组,毕竟都说Array比List效率高,这种时候和上述方法类似,也是foreach语句。具体的分析后续更新。

    MyBatis传入List集合批量删除

    Model

    public class FastDFSModel {    private String pathId;    private String modelId;    private String csvpath;    private String resultpath;    private String updatetime;    }

    Dao

    import org.apache.ibatis.annotations.Param; void deleteDateById(@Param("list") List<FastDFSModel> deleteList);

    mapper

    其中parameterType写为list

    foreach 中的collection写为"list"

    item 为遍历的每一项,代表着model

    在变量中用#{item.pathId}来获取值

    此业务为通过id进行删除

    其中open="(" separator="," close=")"为拼接的in查询,把id用逗号拼接起来

     <delete id="deleteDateById" parameterType="java.util.List">        delete from T_FASTDFS_PATH t where t.path_id in        <foreach item="item" collection="list" open="(" separator="," close=")">            #{item.pathId,jdbcType=VARCHAR}        </foreach>    </delete>

    控制台打印如下

    delete from T_FASTDFS_PATH t where t.path_id in ( ? , ? , ? ) 
     PreparedStatement - ==> Parameters: 2(String), 1(String), 3(String)

    到此,关于“MyBatis传入List集合查询数据问题怎么解决”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

    --结束END--

    本文标题: MyBatis传入List集合查询数据问题怎么解决

    本文链接: https://lsjlt.com/news/349129.html(转载时请注明来源链接)

    有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

    猜你喜欢
    • MyBatis传入List集合查询数据问题怎么解决
      这篇文章主要介绍“MyBatis传入List集合查询数据问题怎么解决”,在日常操作中,相信很多人在MyBatis传入List集合查询数据问题怎么解决问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”MyBatis...
      99+
      2023-07-05
    • MyBatis传入List集合查询数据问题
      目录MyBatis传入List集合查询数据主要有两点问题MyBatis传入List集合批量删除总结MyBatis传入List集合查询数据 使用的是SSM框架,数据库是MySQL,做查...
      99+
      2023-02-07
      MyBatis 传入List MyBatis传入集合查询 List集合查询数据
    • MyBatis查询数据,赋值给List集合时,数据缺少的问题及解决
      目录MyBatis查询数据赋值给List集合数据缺少解决办法Mybatis查询时数据丢失的问题经过排查得出结论解决办法MyBatis查询数据赋值给List集合数据缺少 今天在使用My...
      99+
      2024-04-02
    • mybatis-plus查询无数据问题及解决
      目录mybatis-plus查询无数据先说说背景然后最开始根据经验做了几个判断根据以上3点开始排查 mybatis-plus查询操作一、查询二、分页mybatis-plus...
      99+
      2022-12-08
      mybatis-plus查询 查询无数据 mybatis-plus查询无数据
    • Mybatis查询时数据丢失的问题及解决
      目录Mybatis查询时数据丢失经过排查得出结论解决办法Mybatis查询部分字段漏查问题(mysql)Mybatis查询时数据丢失 公司里的实体类和mapper文件均由mybati...
      99+
      2024-04-02
    • 如何解决Mybatis查询时数据丢失的问题
      这篇文章主要为大家展示了“如何解决Mybatis查询时数据丢失的问题”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何解决Mybatis查询时数据丢失的问题”这篇文章吧。Mybatis查询时数据...
      99+
      2023-06-28
    • mybatis Example Criteria like模糊查询问题怎么解决
      这篇“mybatis Example Criteria like模糊查询问题怎么解决”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章...
      99+
      2023-07-05
    • MyBatis数组与集合判断空问题如何解决
      这篇“MyBatis数组与集合判断空问题如何解决”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“MyBatis数组与集合判断空...
      99+
      2023-07-05
    • mybatis一对一查询一对多查询遇到的问题怎么解决
      这篇文章主要介绍“mybatis一对一查询一对多查询遇到的问题怎么解决”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“mybatis一对一查询一对多查询遇到的问题怎么解决”文章能帮助大家解决问题。实体...
      99+
      2023-06-30
    • 怎么解决MySQL数据库出现慢查询问题
      这篇文章主要讲解了“怎么解决MySQL数据库出现慢查询问题”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么解决MySQL数据库出现慢查询问题”吧!1、My...
      99+
      2024-04-02
    • Mybatis对sql表的一对多查询问题怎么解决
      这篇“Mybatis对sql表的一对多查询问题怎么解决”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Mybatis对sql表...
      99+
      2023-07-02
    • Linq组合查询怎么集成数据库语言查询
      本篇内容主要讲解“Linq组合查询怎么集成数据库语言查询”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Linq组合查询怎么集成数据库语言查询”吧!通常来讲,Linq组合查询提供了一条很常规的途径...
      99+
      2023-06-17
    • Mybatis查找返回Map,List集合类型的数据方式是什么
      这篇文章主要介绍“Mybatis查找返回Map,List集合类型的数据方式是什么”,在日常操作中,相信很多人在Mybatis查找返回Map,List集合类型的数据方式是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对...
      99+
      2023-06-20
    • Mybatis-plus使用selectList查询数据为null的问题及解决办法
      目录概述原因解决方案概述 使用mybatis-plus的selectList查询数据封装进list 打印为null javaben和数据库字段也能对应上 原因 可以从图片看的出...
      99+
      2024-04-02
    • mybatis使用Integer类型查询出现的问题怎么解决
      本文小编为大家详细介绍“mybatis使用Integer类型查询出现的问题怎么解决”,内容详细,步骤清晰,细节处理妥当,希望这篇“mybatis使用Integer类型查询出现的问题怎么解决”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入...
      99+
      2023-06-29
    • ArrayList集合容器问题怎么解决
      本篇内容主要讲解“ArrayList集合容器问题怎么解决”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“ArrayList集合容器问题怎么解决”吧!ArrayList 踩坑首先大家看看这段代码有什...
      99+
      2023-06-16
    • MyBatisPlus 大数据量查询慢的问题解决
      目录常规查询流式查询MyBatis 流式查询接口游标查询大数据量操作的场景大致如下: 数据迁移数据导出批量处理数据 在实际工作中当指定查询数据过大时,我们一般使用分页查询的方式一页一...
      99+
      2023-02-05
      MyBatis Plus 查询慢 MyBatisPlus 大数据量查询
    • 数据库的嵌套查询的性能问题怎么解决
      本文小编为大家详细介绍“数据库的嵌套查询的性能问题怎么解决”,内容详细,步骤清晰,细节处理妥当,希望这篇“数据库的嵌套查询的性能问题怎么解决”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新...
      99+
      2023-03-20
      数据库
    • 怎么解决php数据库查询结果编码的问题
      这篇“怎么解决php数据库查询结果编码的问题”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“怎么解决php数据库查询结果编码的...
      99+
      2023-07-05
    • Linq插入数据问题怎么解决
      这篇文章主要讲解了“Linq插入数据问题怎么解决”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Linq插入数据问题怎么解决”吧!今天用Linq插入数据,总是插入错误,说某个主键字段不能为空,...
      99+
      2023-06-17
    软考高级职称资格查询
    编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
    • 官方手机版

    • 微信公众号

    • 商务合作