首页 > 其他分享 >MyBatis实现In查询(XTHS 实测)

MyBatis实现In查询(XTHS 实测)

时间:2023-09-10 11:25:39浏览次数:42  
标签:XTHS 迭代 实现 查询 实测 参数 user MyBatis

一. SQL语法实现In查询

  1. SQL语句实现In查询
SELECT * FROM user_info WHERE user_name in ('xixi','haha');

  

二. MyBatis实现In查询

错误范例:如果在MyBatis中也使用类似SQL语法来实现In查询,像如下示例,肯定会报错,因为MyBatis不支持这样的写法。

// Dao 层
List<UserInfoDO> getUserInfoByNames(@Param("name") String names); 

// 其中,names="xixi,haha";
<!-- UserInfoMapper.xml文件 -->
<select id="getUserInfoByNames" resultType="com.zijikanwa.test.model.UserInfoDO">
    SELECT * FROM user_info WHERE user_name in (#{names})
</select>

  

  1. 正确途径:MyBatis提供foreach语句实现In查询。foreach语法如下:

collection:该属性的对应方法的参数类型可以是List、数组、Map。如果方法的参数类型不属于前三种,则必须和方法参数@Param指定的元素名一致。
item: 表示迭代过程中每个元素的别名。可以随便起名,但是必须跟元素中的#{}里面的名称一致。
index:表示迭代过程中每次迭代到的位置(下标)
open:前缀
close:后缀
separator:分隔符,表示迭代时每个元素之间以什么分隔。
————————————————
版权声明:本文为CSDN博主「Jothan Zhong」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_43985303/article/details/130074235

  

  1. MyBatis实现In查询的具体细节如下所示。

 

2. Dao层方法的参数有多个

  1. 当Dao层方法的参数有多个时,有两种方式实现:

标签:XTHS,迭代,实现,查询,实测,参数,user,MyBatis
From: https://www.cnblogs.com/wwssgg/p/17690900.html

相关文章

  • 如何设置el-tree点箭头图标才会展开或者收起(XTHS实测)
    在使用Element框架开发vue项目时,如何设置el-tree只有点击箭头图标才会展开或者收起效果呢?如图 转自:如何设置el-tree点箭头图标才会展开或者收起-百度经验(baidu.com)......
  • MyBatisCodeHelperPro支持动态解析sql
    通过setting找到插件搜索MyBatisCodeHelperPro点击【Install】进行安装github:https://github.com/gejun123456/MyBatisCodeHelper-Prohttps://brucege.com/doc/#/......
  • 四叶草漏扫——产品实测
    使用四叶草对公司网络进行了全网段的扫描。针对主机以及web服务器的扫描很全面,问题的发现也很多,也包含最近才出了CVE2023……。但是美中不足的是,四叶草漏扫设备没有交换机等数通设备、防火墙的等网络安全设备的漏洞库。......
  • MyBatis 的 # 传参,是参数化查询,那参数化查询到底为什么可以防止sql注入?
    对于MyBatis的#传参,虽然最终的SQL查询语句中会将参数值替换到对应的位置,但是这个过程并不是简单的字符串拼接,而是通过预编译的方式进行处理。这样做有以下几个方面的好处,从而减少了SQL注入的风险:参数值转义:在参数化查询中,MyBatis会自动对参数值进行转义处理。这样可以......
  • mybatis记录
    1.条件查询:(1)接口:@MapperpublicinterfacePlanBrightnessMapperextendsBaseMapper<GuideScreenSyncMonitoring>{List<GuideScreenSyncVo>getPis(Map<String,Object>params);}(2)实现:<?xmlversion="1.0"encoding="UTF-8&......
  • Spring整合Mybatis
    Spring整合Mybatis就是将原本Mybatis中的Mapper.xml文件在Spring容器中注册为对象。导入mybatis-spring依赖包<dependency><groupId>org.mybatis</groupId><artifactId>mybatis-spring</artifactId><version>1.3.2</version></dependency>......
  • MyBatis-Plus的使用介绍
    MyBatis-Plus是MyBatis的增强工具,它简化了MyBatis的开发流程,提供了更多的便捷功能。下面是MyBatis-Plus的使用介绍:引入依赖:在Maven项目中,需要在pom.xml文件中添加MyBatis-Plus的依赖。com.baomidoumybatis-plus-boot-starter最新版本号com.baomidoumybatis-p......
  • MyBatis操作Oracle(实现兼容Oracle和MySQL)
    MyBatis操作Oracle(实现兼容Oracle和MySQL)以Oracle11g来演示,只需要创建序列,不需要创建触发器,通过ORM框架操作来生成主键MySQL版本是8.x代码地址:https://gitee.com/zhang-zhixi/springboot-mp-oracle-auto.git1、分别创建Student表Oracle:CREATETABLE"STUDENT"("ID"N......
  • SpringBoot学习之配置MyBatis常见异常
    Invalidboundstatement(notfound)出现原因和解决方法: 常见原因:1.mapper.xml中namespace和实际mapper接口所在的位置不一致。2.mapper.xml中的id名称和maapper接口中的方法名称不一致。3.如果上述两点都没有问题,那么大概率是application配置文件有配置错误。 程序和S......
  • mybatis类型转换。TypeHandler案例
    配置mybatis-plus:configuration:map-underscore-to-camel-case:truecache-enabled:falseglobal-config:db-config:column-underline:truedb-type:mysqlrefresh:falsetype-handlers-package:com.peony.common.typehandlers......