mybatis <if>标签判断“0“不生效

这篇具有很好参考价值的文章主要介绍了mybatis <if>标签判断“0“不生效。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

原if标签写法

<if test="type == '0'">
 <!--内部逻辑-->
</if>

这种情况不生效,原因是mybatis是用OGNL表达式来解析的,在OGNL的表达式中,'0’会被解析成字符(而我传入的type却是string),java是强类型的,char 和 一个string 会导致不等,所以if标签中的sql不会被解析。 

解决方法

<!--第一种解决方案,加上.toString()-->
<if test="type == '0'.toString()">
 <!--内部逻辑-->
</if>

<!--第二种解决方案,将单引号缓冲双引号-->
<if test='type == "0"'>
 <!--内部逻辑-->
</if>

参考地址:mybatis <if>标签判断不生效_通域的博客-CSDN博客 文章来源地址https://www.toymoban.com/news/detail-694457.html

到了这里,关于mybatis <if>标签判断“0“不生效的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 在Mybatis中如何在where-if的语句中判断数组或列表的长度是否为0?

    可以使用OGNL表达式来判断列表或数组的长度是否为0。OGNL是Object Graph Navigation Language的缩写。它是一种表达式语言,用于从对象图中进行导航和访问。在Mybatis中,OGNL可用于在动态SQL语句中引用变量和方法。 假设要查询一个列表,查询条件包括一个列表idList,如果该列表或数

    2024年02月14日
    浏览(57)
  • 优化MyBatis查询条件:从Boolean类型判断到<choose>标签的进化

    作为一名Java CRUD Coder,日常开发中会遇到类似的需求:通过下拉列表选择“是”或“否”来对数据库中的数据进行筛选。如果此时前端的传参是 boolean 类型的 true 和 false ,后端Mapper层的代码可能会遇到需要构造类似if (param.existFlag) and table.id not in (xxxx1,xxxx2)这样的条件查询,如

    2024年02月19日
    浏览(32)
  • 在Mybatis中写动态sql这些标签:if、where、set、trim、foreach、choose的作用是什么,怎么用?

    在 MyBatis 中,您可以使用动态 SQL 标签来构建灵活的 SQL 查询,以根据不同的条件生成不同的查询语句。以下是这些标签的作用和用法: 1. **`if` 标签:** 用于根据某个条件动态地包含或排除 SQL 片段,test:可以写条件。    示例用法:        ```xml    select id=\\\"getUserList\\\" param

    2024年02月11日
    浏览(47)
  • Java中if判断语句的使用详解

    摘要:if判断语句是Java中最基本也是最常用的流程控制语句之一。本文将详细介绍Java中if语句的用法和常见的应用场景,帮助读者深入理解并正确使用if语句。 正文: 一、if语句的基本语法 其中,condition为一个布尔表达式,即返回true或false的表达式。如果condition为true,就执

    2024年01月19日
    浏览(46)
  • 如何 Java 中的大量的 if else 判断?

    目录 问题出现: 如何 Java 中的大量的 if else 判断? 解决方案:    1.策略模式     2.工厂模式     3.映射表    4.反射+配置文件------极力推荐使用!!!!! 在编写Java相关程序时,我们经常遇到:  大量的 if  else 语句,无不让人内心疯狂,这都是些啥代码啊!!!!!

    2024年02月10日
    浏览(38)
  • if if if 判断 和 if elif elif 判断有什么区别

    你可以使用多个if语句来检查多个条件,但每个条件都会被逐一检查,即使前面的条件为真,后续的条件也会被检查。 这意味着,如果多个条件都为真,那么多个条件的代码块都会被执行。 示例: 点击查看代码 如果condition1、condition2和condition3都为真,那么所有三个代码块都

    2024年02月11日
    浏览(33)
  • 【Unity】一键切换是否允许#if UNITY_EDITOR条件编译生效

    在项目中经常会条件编译的方式来让编译器环境和非编译器环境跑不同的代码,但这种方式会让非编译器环境的代码测试变得十分不方便。UNITY_EDITOR也是Unity预定义的宏,不能直接在PlayerSettings里面增加或删除。 用#undef UNITY_EDITOR可以取消unity预定义的UNITY_EDITOR宏,这样就可以

    2024年02月11日
    浏览(35)
  • JavaScript条件判断if 语句

    一、if语句的分支 分类:单分支,双分支,多分支,分支嵌套 ()中可以是一个值,也可以是一个表达式 案例: 二、switch ()只能是变量或值,不能是表达式 案例: break必须添加,否则会继续往下执行 问题: 什么时候用if,什么时候用switch if:条件是一个范围 或者 是具体的

    2024年02月06日
    浏览(66)
  • nginx 逻辑判断if语句使用

    当nginx 需要多重过滤转发时,我们会用到逻辑判断if,下面是栗子: if 语句可以过滤下一级路径,从而转发到实际的资源地址。

    2023年04月09日
    浏览(72)
  • Python入门(二)——判断语句if

    在Python编程语言中,布尔类型或者说bool类型是一种重要的数据类型,它只有两个值:True和False。这两个值分别对应整数1和0,但它们不是直接的整数,而是被看作特定的概念——真和假。在Python中,我们使用\\\"True\\\"和\\\"False\\\"来表示这两种概念。 值得注意的是,尽管\\\"True\\\"和

    2024年01月21日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包