美文网首页Java
mybatis-向sql中添加判断条件

mybatis-向sql中添加判断条件

作者: Nenezsnp | 来源:发表于2019-03-27 10:46 被阅读2次

需求:判断数据库中的权限并拼接相关的条件

关键字:mybatis <if>标签 <foreach>标签 标签test==判断 

因为不熟悉Mybatis的一些用法 昨天花了一下午时间去做这个小小的点,希望我的问题点能够帮助那些依旧在为梦想拼搏的人。

已改正确的写法

权限list循环判断并拼接字段

这里有两个知识点:

1.<if>标签 test判断两个String类型的字段是否相等

可以是<if test=" 传过来的字段 ==‘固定的字段’.toString"></if>或者<if test='传过来的字段==“固定的字段”'></if>

参考:https://www.cnblogs.com/westward/p/6910856.html

2.foreach循环

item直接就代表了你循环中list 【10101,10102】中的值,直接取就能够判断,如上述中的图片

这里说下我的遇到的问题:

第一个想法是将sql后台拼接进来传入数值 sql="and sqrlx IS NOT NULL";理想的情况是and sqrlx IS NOT NULL直接拼接到sql条件的的后面,但是会给你自动加两个''给你sql阔起来传过去。即'and sqrlx IS NOT NULL' 这时候就发生错误了(可以试试将条件''起来)。

第二个想法是xml文件中判断直接写and sqrlx IS NOT NULL 这样应该没啥问题了,但是foreach循环的时候我记得是要#{item} 然后写成<if test="#{item}=='10101'.toString"></if>跑起项目一直报错,后来写成<if test="item=='10101'.toString"></if>可以了。

总结:还是自己的基础不扎实 赠予那些掉进坑里的人。

相关文章

  • mybatis-向sql中添加判断条件

    需求:判断数据库中的权限并拼接相关的条件 关键字:mybatis 标签 标签 标签test==...

  • 动态sql

    根据不同条件,需要执行不同的sql命令 MyBatis中动态sql是在mapper.xml中添加逻辑判断

  • sql语句加逻辑判断

    sql语句条件判断 主要分为查询数据判断 及select 后面字段判断 与where后面条件判断 1.select...

  • Spring-整合MyBatis

    零、本文纲要 一、JDBC & MyBatis相关内容 JDBC-手动编写SQL MyBatis-手动编写SQL ...

  • druid报错分析:com.alibaba.druid.sql.

    在写SQL的时候在where中加入了聚合函数的判断条件,犯了初学者的错误。 在GROUP BY 后面添加HAVIN...

  • sql where条件中入参判断

    where条件中可以对入参进行判断 实现在入参为空时,查询全量数据;入参非空是,条件查询。

  • 05_03_bash脚本编程之二 条件判断  、05_04_b

    bash脚本编程之二、条件判断 条件判断: 如果用户不存在 添加用户,给密码并显示添加成功; 否则...

  • 16、mybatis-动态sql-if

    一、说明 if元素 是简单的条件判断逻辑,满足指定条件时追加 if元素内的SQL,类似于Java 中的 if语句...

  • 九 . 动态sql-if

    一、说明 if元素 是简单的条件判断逻辑,满足指定条件时追加 if元素内的SQL,类似于Java 中的 if语句...

  • 动态SQL

    动态SQL: Mybatis中可以在写mapper.xml时添加逻辑判断常用关键字:if、where、「choos...

网友评论

    本文标题:mybatis-向sql中添加判断条件

    本文链接:https://www.haomeiwen.com/subject/pamavqtx.html