Mybatis中的动态sql怎么利用OGNL表达式进行处理

  介绍

Mybatis中的动态sql怎么利用OGNL表达式进行处理?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

<强>常用的Mybatis动态sql标签有6种:

,,,,,, 1。如果语句(简单的条件判断)

,,,,,, 2。选择(当otherwize)相当于Java语言中的开关,与jstl中的选择很类似。

,,,,,, 3。削减(对包含的内容加上前缀,或者后缀等,前缀,后缀)

,,,,,, 4。(主要是用来简化sql语句中,条件判断的,能智能的处理,或者,不必担心多余导致语法错误)

,,,,,, 5。集(主要用于更新时)

,,,,,, 6。在foreach(在实现mybatis语句查询时特别有用)


模糊查询

& lt;选择id=皊elect1"resultType=癇aseresultMap"比;   18岁SELECT *从用户那里=' & # 39;   & lt;如果测试=懊?=null"比;   和名字#{名称}   & lt;/if>   & lt;/select>

年龄18且可以模糊搜索姓名


当工作参数有传入时,就找出对应工作的人,否则就找出为没有工作的人,而不是所有人

& lt;选择id=皊elect2"resultType=癇aseresultMap"比;   18岁SELECT *从用户那里=' & # 39;      & lt; choose>   & lt;当测试=肮ぷ?=null"比;   工作和工作=# {}   & lt;/when>   & lt; otherwise>   和工作=皀one"      & lt;/otherwise>   & lt;/choose>   & lt;/select>

 & lt;选择id=皊elect5"resultType=癇aseresultBase"比;
  从用户id在select *
  & lt; foreach收集=發ist"指数=癷ndex"项=癷tem"打开=?““分隔符=?;近=?“比;
  #{项}
  & lt;/foreach>
  & lt;/select>
  
  公共Listselect5 (Listids);


,集

为什么要用,因为单纯的写,可能会导致何地……和地方.....情况的发生,也是一样的

当然装饰标签是万能的

& lt;选择id=皊elect3"resultType=癇aseresultMap"比;   从用户选择*   & lt; where>      & lt;如果测试=澳炅?=null"比;   年龄=#{时代}   & lt;/if>   & lt;如果测试=肮ぷ?=null"比;   和工作像#{工作}   & lt;/if>      & lt; where>   & lt;/select>      & lt;更新id=皍pdate1"祝辞   更新用户   & lt; set>   & lt;如果测试=坝没?=null"在用户名=# {username} & lt;/if>   & lt;如果测试=懊苈?=null"在密码=#{密码}& lt;/if>   & lt;如果测试=澳炅?=null"在年龄=#{时代}& lt;/if>   & lt;/set>   在id=# {id}   & lt;/update> & lt; pre code_snippet_id=?048504”;snippet_file_name=癰log_20161214_2_7439616"类=皃rettyprint lang-xml"name=癱ode"祝辞& lt; pre code_snippet_id=?048504”;snippet_file_name=癰log_20161214_2_7439616"name=癱ode"类=癶tml"祝辞& lt; pre code_snippet_id=?048504”;snippet_file_name=癰log_20161214_2_7439616"祝辞& lt;/pre>   & lt; pre> & lt;/pre>   & lt; pre> & lt;/pre>   & lt; p> & lt;/p>   & lt; pre> & lt;/pre>   & lt; pre> & lt;/pre>   & lt; pre> & lt;/pre>   & lt; pre code_snippet_id=?048504”;snippet_file_name=癰log_20161214_3_3393435"name=癱ode"类=癶tml"祝辞& lt;/pre> & lt; pre code_snippet_id=?048504”;snippet_file_name=癰log_20161214_3_3393435"祝辞& lt;/pre>   & lt; pre> & lt;/pre>   & lt; pre> & lt;/pre>   & lt; pre> & lt;/pre>   & lt; pre> & lt;/pre>   & lt; pre> & lt;/pre>      & lt;/pre> & lt; div类=皊ave_code tracking-ad"data-mod=皃opu_249"祝辞& lt; a href=癹avascript:“rel=巴獠縩ofollow"祝辞& lt; img src=癶ttps://cache.yisu.com/upload/information/20200623/121/113452.png"祝辞& lt;/a> & lt;/div> & lt;/pre>

看完上述内容,你们掌握Mybatis中的动态sql怎么利用OGNL表达式进行处理的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!

Mybatis中的动态sql怎么利用OGNL表达式进行处理