最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Mybatis利用OGNL表達式處理動態(tài)sql的方法教程

 更新時間:2017年06月15日 09:15:04   作者:枯木生花  
這篇文章主要給大家介紹了關(guān)于Mybatis利用OGNL表達式處理動態(tài)sql的方法教程的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家具有一定的參考學習價值,需要的朋友們下面跟著小編一起來學習學習吧。

本文介紹的是關(guān)于Mybatis中用OGNL表達式處理動態(tài)sql的相關(guān)內(nèi)容,分享出來供大家參考學習,下面來一起看看詳細的介紹:

常用的Mybatis動態(tài)sql標簽有6種:

      1. if 語句 (簡單的條件判斷)

      2. choose (when,otherwize) ,相當于Java 語言中的 switch ,與 jstl 中的choose 很類似.

      3. trim (對包含的內(nèi)容加上 prefix,或者 suffix 等,前綴,后綴)

      4. where (主要是用來簡化sql語句中where條件判斷的,能智能的處理 and or ,不必擔心多余導致語法錯誤)

      5. set (主要用于更新時)

      6. foreach (在實現(xiàn) mybatis in 語句查詢時特別有用)

(1) if

模糊查詢

<select id="select1" resultType="BaseresultMap"> 
 SELECT * FROM User WHERE Age = ‘18' 
 <if test="name != null"> 
 AND name like #{name} 
 </if> 
</select> 

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

(2)choose,when,otherwize

當Job參數(shù)有傳入時,就找出對應工作的人,否則就找出Job為none的人,而不是所有人

<select id="select2" resultType="BaseresultMap"> 
 SELECT * FROM User WHERE Age = ‘18' 
 
 <choose> 
 <when test="Job != null"> 
 AND Job =#{Job} 
 </when> 
 <otherwise> 
 AND Job="none" 
 
 </otherwise> 
 </choose> 
</select> 

(3)foreach

 <select id="select5" resultType="BaseresultBase"> 
 select * from User where id in 
 <foreach collection="list" index="index" item="item" open="(" separator="," close=")"> 
  #{item} 
 </foreach> 
 </select> 
 
public List<User> select5(List<Integer> ids); 

(4) where set trim

where,set

為什么要用where,因為單純的寫where可能會導致 where And ... 和 where .....情況的發(fā)生,Set也是一樣的

當然 trim 標簽是萬能的

<select id="select3" resultType="BaseresultMap"> 
 SELECT * FROM User 
<where> 
 
 <if test="Age != null"> 
 Age = #{Age} 
 </if> 
 <if test="Job != null"> 
 AND Job like #{Job} 
 </if> 
 
<where> 
</select> 
 
<update id="update1"> 
 update User 
 <set> 
 <if test="username != null">username=#{username},</if> 
 <if test="password != null">password=#{password},</if> 
 <if test="Age != null">Age =#{Age}</if> 
 </set> 
 where id=#{id} 
</update> 
<pre code_snippet_id="2048504" snippet_file_name="blog_20161214_2_7439616" class="prettyprint lang-xml" name="code"><pre code_snippet_id="2048504" snippet_file_name="blog_20161214_2_7439616" name="code" class="html"><pre code_snippet_id="2048504" snippet_file_name="blog_20161214_2_7439616"></pre> 
<pre></pre> 
<pre></pre> 
<p></p> 
<pre></pre> 
<pre></pre> 
<pre></pre> 
<pre code_snippet_id="2048504" snippet_file_name="blog_20161214_3_3393435" name="code" class="html"></pre><pre code_snippet_id="2048504" snippet_file_name="blog_20161214_3_3393435"></pre> 
<pre></pre> 
<pre></pre> 
<pre></pre> 
<pre></pre> 
<pre></pre> 
 
</pre><div class="save_code tracking-ad" data-mod="popu_249"><a href="javascript:;" rel="external nofollow" ><img src="http://static.blog.csdn.net/images/save_snippets.png"></a></div></pre> 

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作能帶來一定的幫助,如有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關(guān)文章

最新評論

青州市| 遂川县| 闸北区| 翁源县| 西城区| 柳河县| 大连市| 岐山县| 内乡县| 自治县| 育儿| 南岸区| 屏东市| 北川| 民丰县| 定南县| 密山市| 鄯善县| 邛崃市| 明光市| 莒南县| 堆龙德庆县| 屏山县| 财经| 太白县| 柳江县| 五华县| 九龙县| 金寨县| 沾益县| 且末县| 黄大仙区| 双鸭山市| 运城市| 大方县| 普安县| 吴江市| 漳平市| 隆安县| 南溪县| 司法|