日本高清免费一本视频100禁_在线不卡欧美精品一区二区三区_国产一区二区好的精华液_中文综合在线_国产啊啊啊视频在线观看_大地资源网免费观看高清

IT之道-艾銻知道

您當前位置: 主頁 > 資訊動態 > IT知識庫 >

Mybatis4 之Mybatis動態sql的實現代碼


2020-03-22 20:48 作者:艾銻無限 瀏覽量:
中小企業為什么要選擇IT外包呢?
 
 
中小企業選擇IT外包服務的原因,首先大家想到的可能是節省成本,但從專業的角度上來說,節省成本卻不是最重要的,這時代任何一家企業都會成為IT公司,任何一家企業都會成互聯網公司,任何一家企業最終也都會成為數據公司,所以中小企業在發展中,IT的規劃和運用是最重要的,這直接決定著這家企業能活多久,能活多好.
 
但往往中小企業負責人為了方便,會直接花錢找個網絡管理員,讓這個人即處理企業內部電腦和網絡的問題,又兼著其它方面的工作,從表面上看好像還挺劃算,而且人是自己公司的人,好像也挺放心.
 
但實際恰恰相反,我給大家講個故事,可能你就明白了.
 
有一家手機企業,他們的核心優勢是研發和生產,營銷和廣告并不是他們具備的能力,為了更好的銷售他們生產的手機,他們就請來了一個專門搞營銷和廣告的經理,因為公司處在發展時期,為了節省成本,所以這個經理就自己一個兵,在沒有團隊的情況下,又要想策劃,又要搞制作,還要設計圖片,最終策劃出來的方案是二流的,制作和設計還是三流的,導致手機銷售量非常差,沒有正常現金流,后來這家企業就倒閉關門了.
 
還有一家手機企業,他們的核心優勢也是研發和生產,但他們的負責人非常智慧,把營銷和廣告部分外包給了一家行業頂尖的企業,這家企業幫助他們策劃出了一個絕佳的方案,還幫助落實和執行了整個方案,最終大獲全勝,當年手機銷量邁進了全國前三,后來核算整體在營銷和廣告的投入和產出卻是極低的.
 
上面兩個案例,讓我們看到了企業致勝的關鍵不是你有什么,而是你如何利用你的沒有.
 
總的來說中小企業選擇IT外包公司有三大優勢:
 
l  首先節省成本是第一點優勢
我們透過下圖可以看出企業自招網管和用IT外包公司成本可以節省90%以上,而且還是專業的團隊提供服務.
l  其次專業化的服務讓企業有更多的時間搶占先機是第二大優勢
專業的團隊,可以根據你不同的需要匹配不同的工程師,這大大節省了企業的時間,互聯網時代,分秒必爭,當年滴滴和快滴的100億戰爭,不就是為了贏得時間,讓自己更快的戰領這個市場,失去先機就失去了一切,所以IT外包公司給你帶來的不僅僅是專業,還有先機.
l  最后獲得專業的解決方案成為行業的領導地位是第三大優勢
這個時代已經不是人海戰術,而是運用互聯網技術,以一當十,以十當百的快速發展,那怎樣可以迅速從行業中脫穎而出,就需要互聯網的解決方案,一家專業的互聯網IT外包公司可以讓你快速轉型升級,最重要的不僅僅只有方案,還有切實可行的落地執行,讓你更專注自己核心業務,達到強強聯合的效果.
你的企業IT外包了嗎?
 

Mybatis4 之Mybatis動態sql的實現代碼

1.什么是動態SQL
傳統的使用JDBC的方法,相信大家在組合復雜的的SQL語句的時候,需要去拼接,稍不注意哪怕少了個空格,都會導致錯誤。Mybatis的動態SQL功能正是為了解決這種問題, 其通過 if, choose, when, otherwise, trim, where, set, foreach標簽,可組合成非常靈活的SQL語句,從而提高開發人員的效率。
SQL語句不固定, 會根據前臺用戶的操作而進行變化的SQL語句, 可以被稱之為動態SQL. 在MyBatis中, 提供了一組標簽, 用于方便的實現動態SQL, 不需要通過java代碼拼接字符串了.
###2.動態sql中的標簽

1. <if>
用于條件判斷, test屬性表示判斷結果, 要求是一個boolean.

2.<where>
用于維護where子句, 通常配合一起使用. 如下功能:
a)當沒有條件時, 不會創建WHERE關鍵字;
b)當有條件時, 會自動生成WHERE關鍵字;
c)會自動去掉第一個條件的and/or關鍵字.

3.<choose><when><otherwise>
功能類似于switch…case…default, 表示多分支判斷, 只能成立一個條件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<mapper namespace="com.bjsxt.mapper.UserMapper">
 <select id="selByCondition" resultType="user">
 select * from tb_user
 <where>
  <if test="id != null">
  and id=#{id}
  </if>
  <if test="username != null and username != ''">
  and username=#{username}
  </if>
  <if test="age != null">
  and age &lt;&gt; #{age}
  </if>
  <choose>
  <when test="birthday != null and birthday != ''">
   and birthday = #{birthday}
  </when>
  <otherwise>
   and birthday is null
  </otherwise>
  </choose>
 </where>
 </select>
</mapper>

4.<bind>
對參數進行加工, 通常用于模糊查詢給參數加通配符
1
2
3
4
5
6
7
8
9
<select id="sel2" resultType="user">
 <include refid="base_sql" />
 <where>
 <if test="realname != null and realname != ''">
  <bind name="realname" value="'%' + realname + '%'"/>
  and realname like #{realname}
 </if>
 </where>
</select>

5.<include>
配合使用, 用于提取通用sql語句片段, 用于引用SQL片段
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<sql id="base_sql">
 select
 id, username, password, realname, age, birthday, reg_time regTime
 from tb_user
</sql>
<select id="sel2" resultType="user">
 <include refid="base_sql" />
 <where>
 <if test="realname != null and realname != ''">
  <bind name="realname" value="'%' + realname + '%'"/>
  and realname like #{realname}
 </if>
 </where>
</select>

6.<set>
用于維護update語句中的set子句, 特點是可以刪除多余的逗號
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<update id="upd">
 update
 tb_user
 <set>
 <if test="username != null and username != ''">
  username=#{username},
 </if>
 <if test="age != null">
  age=#{age}
 </if>
 </set>
 where
 id=#{id}
</update>

7.<foreach>
遍歷集合(數組, List, Set, Map), 通常用于in操作或批量新增. 屬性簡介:
a)collection: 要遍歷的集合
b)item: 迭代項
c)open: 以什么字符開頭
d)close: 以什么字符結束
e)separator: 多個迭代項之間的分隔符
1
2
3
4
5
6
7
8
9
<delete id="delBatch">
 delete from tb_user
 <where>
 id in
 <foreach collection="ids" item="id" open="(" close=")" separator=",">
  #{id}
 </foreach>
 </where>
</delete>

8.<trim>
在語句的前后進行追加和去除指定的字符.
1
2
3
4
5
6
7
8
<insert id="insBatch">
 insert into tb_user values
 <foreach collection="users" item="user" separator=",">
 <trim prefix="(" prefixOverrides="," suffix=")" suffixOverrides=",">
  ,default, #{user.username}, #{user.password}, #{user.realname}, #{user.age}, #{user.birthday}, now(),
 </trim>
 </foreach>
</insert>
知識點補充:靜態sql與動態sql有什么區別
SQL 語句從編譯和運行的角度可以分為兩種,靜態 SQL和 動態 SQL,這兩種 SQL 在使用方式、運行機制和性能表現等方面各有特點 :
靜態 SQL:靜態 SQL 語句一般用于嵌入式 SQL 應用中,在程序運行前,SQL 語句必須是確定的,例如 SQL 語句中涉及的列名和表名必須是存在的。靜態 SQL 語句的編譯是在應用程序運行前進行的,編譯的結果會存儲在數據庫內部。而后程序運行時,數據庫將直接執行編譯好的 SQL 語句,降低運行時的開銷。
動態 SQL:動態 SQL 語句是在應用程序運行時被編譯和執行的,例如,使用 DB2 的交互式工具 CLP 訪問數據庫時,用戶輸入的 SQL 語句是不確定的,因此 SQL 語句只能被動態地編譯。動態 SQL 的應用較多,常見的 CLI 和 JDBC 應用程序都使用動態 SQL。
靜態sql:語句類型在編程時候必須是確定好的。比如
1
2
select * from employee where empno='abc'
select * from employee where empno='12'
都必須是確定的,唯一可以變化的是abc的值。
動態sql:語句類型可以在運行期間指定,比如clp就是最典型的動態sql程序,你可以輸入任何命令。
靜態sql的存取路徑是在運行前就確定好的,而動態sql的存取路徑是在運行時動態生成的。因此生成的存取計劃相對更優,但考慮到生成存取路徑的開銷,有可能應用程序的運行時間相對會比靜態sql長些。
總結
到此這篇關于Mybatis4 之Mybatis動態sql的實現代碼的文章就介紹到這了,更多相關mybatis動態sql內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:

 

相關文章

IT外包服務
二維碼 關閉
主站蜘蛛池模板: 成年人观看免费视频_国产精品免费不_伦理二区_国产中文在线播放_97人人干_裸体丰满少妇做爰视频_aⅴ色欲AV片无码精品小说_日本在线视频二区 | 中文无码vr最新无码av专区_成人A片色情免费观看_成人无码网WWW在线观看_精品久久久久一区二区_欧美大奶在线_成年人免费小视频_免费人成在线观看视频高潮_欧美大片aaa | 特黄三级又爽又粗又大_国产精品99久久久久久一二区_成人看片人aa_综合成人_欧美激情一区三区_亚洲www在线观看_韩日在线观看视频_久久无码欧美一二三区 | 女人高潮娇喘抽搐喷水视频_萍萍的性荡生活第六季_亚洲欧美日韩久久精品第一区_亚洲一区二区中文字幕在线观看_伊人WWW22综合色_亚洲国产欧美国产第一区_日韩性做爰免费A片AA片_黄色录像在线免费观看 | 99在线免费观看_亚洲一区二区无码偷拍_很很鲁很很很鲁在线视频播放_免费成人网在线观看_91av视频网站_厨房挺进紧致班主任少妇_特警新人类国语免费高清在线观看_日韩中文在线 | 性色av蜜臀av色欲av_脱了老师内裤猛烈进入的软件_中文亚洲AV片在线观看无码_a毛片视频_日韩视频在线观看一区二区三区_av大片在线无码免费_理论片91_99精品全国免费观看视频 | 亚洲福利视频网址_一级做a爰片久久毛片免费看_成人aaaa免费全部观看_18禁无码永久免费无限制网站_久久AV无码专区亚洲AV桃花岛_国产50部艳色禁片无码_日本不卡一_777亚洲精品乱码久久久久久 | 免费网站看v片在线成人国产..._日本嫩草_搜索黄色毛片_亚洲在线一区_自拍超碰在线_国产99久久久久_91精品国产亚一区二区三区老牛_国产午夜福利久久网 | 亚洲精品乱码日本按摩久久久久_免费久久精品视频_九九色网站_久久成人秘免费无码_女友的滋味在线观看_极品少妇hdxx麻豆hdxx_伊人婷婷涩六月丁香七月_香港午夜三级A三级三点在线观看 | 狠狠操综合_99热这里只有精品5_国产aⅴ精品_日本在线视频www色_97夜夜澡人人波多野结衣_欧美一级一区二区三区_国产精品自拍系列_日韩精品免费综合视频在线播放 | 999精品在线观看_97午夜理论片影院在线播放_亚洲精品美女久久17c_亚洲丝袜制服美女av_中文乱码字幕高清一区二区_国精一区二区三区_久久精品视频网址_日韩AV无码久久精品免费 | 人人人妻人人澡人人爽欧美一区_91亚洲精品久久久中文字幕_亚洲第一网址_国产粗语刺激对白性视频_国产成人99_国产精品久久久一区二区三区网站_国产日韩在线视看第一页_欧美25p | 亚州欧美在线_亚洲第一av在线播放_99er在线观看_日本欧美日韩_国产强被迫伦姧在线观看无码_啊灬啊灬啊灬啊高潮了_午夜看片网址_免费一级毛毛片 | 6969精品视频在线观看_四虎影院在线视频_大青草久久久蜜臀av久久_亚洲操比_日本一区二区三区爆乳_亚洲va韩国va欧美va_91在线亚洲_国产视热频国只有精品 | 黄色特级视频_国产天堂久久_欧美の无码国产の无码影院_亚洲精欧美一区二区精品_美乳在线播放_久久精品日产第一区二区三区的功能_免费在线看成人av_高清一区二区视频 | 中文天堂在线WWW最新版官网_国产精品性爱_高清一区在线观看_国产精品国产三级国产专区50_91精品视频在线免费观看_亚州av在线_丁香伊人网_国产精品美女一区 | 日本免费黄色_黄色网址在线免费看_传媒精选麻豆_久久久久久久99精品欧美产片_美女黄网站18禁免费看_精品免费国产一区二区_中国少妇初尝黑人巨高清_欧美伊人久久大香线蕉在观 | 日韩118页_日韩在线无毛_成人网av_国产青青_国产精品系列无码专区_男人午夜视频在线观看_国产精一区二区三区_亚洲AV无码久久精品蜜桃 | 亚洲在线网址_亚洲中文字幕伊人久久无码_中文字幕一区二区三区在线观看_亚洲综合AV永久无码精品一区二区_欧洲一二三四五区_日韩a无码av一区二区三区_国产一级毛片不卡_国产欧美日韩一区二区图片 | 中国av一级片_av不卡免费观看_久久久亚洲精品石原莉奈_日韩中文字幕在线_脱了内裤猛烈进入A片费_欧美操人_成人无码区在线观看_亚洲高清国产精品 | 四虎国产精品亚洲永久免费_日本真人做人爱一区二区三区_午夜片少妇无码区在线观看_99热久久精品免费精品_免费国产裸体美女视频全黄_素人一区二区三区_想看一级毛片_永久免费av无码网站yy | 久久婷婷人人澡人人爽人人喊_亚洲中文欧美日韩在线观看_一本一道波多野结衣一区_青青视频一区_国产精品视频免费一区_在线免费亚洲_国精产品一区一区三区在线观看_日日噜噜夜夜狠狠久久丁香五月 | 久久久社区_硬汉视频在线观看_亚洲视频精品一区_jjzz4日本_黄色视免费_嘿咻嘿咻免费无码专区在线看_成人国产精品一区二区网站_人妻老妇乱子伦精品无码专区 | av黄色在线观看_国产一级片一区二区_一本大道香蕉久中文在线播放_开心色播五月_国内揄拍国内精品少妇_久草久热_久久996热在线播放_我的公把我弄高潮了视频 | 久久久国产视频91_亚洲国产AV美女网站_蜜臀av在线一区二区三区_超碰伊人久久_国产高清狼人香蕉在线_国产成人亚洲在线观看_亚洲欧美一级久久精品国产特黄_91pro国产福利网站www | 西西人体www44rt大胆高清_A级毛片毛片免费观看丝瓜_日日鲁鲁鲁夜夜爽爽狠狠视频97_久久夜色精品国产亚洲_国产一区二区三区看片_超黄毛片_宅男噜66免费看网站_麻豆传媒免费网站 | 亚洲福利二区_欧美日韩综合_国产成人综合一区精品_国产爆乳无码视频在线观看3_国产破外女出血视频_无码精品AV久久久奶水_亚洲国产成人精品无码专区_伊人久久大香线蕉AV色婷婷色 | 久草ab_久久黄色视_日韩精品第一_中文字幕丰满孑伦无码专区_日本中文字幕在线观看_涩涩鲁亚洲精品一区二区_国产伦理久久精品久久久久_在线观看免费高清www | 美女裸体爆乳免费网站_亚洲欧美精品国产一级在线_欧美日韩二_四虎库影必出精品8848_b站免费直接观看_九九免费_性欢交69国产精品_午夜提供人体 | 久久久国产视频91_亚洲国产AV美女网站_蜜臀av在线一区二区三区_超碰伊人久久_国产高清狼人香蕉在线_国产成人亚洲在线观看_亚洲欧美一级久久精品国产特黄_91pro国产福利网站www | 国产亚洲精品AA片在线观看网站_黄色免费在线观看网址_九一亚色_91蝌蚪九色_末发育娇小性色xxxxx视频_国产精品久久久免费看_九九精视频_免费很黄无遮挡的视频 | 精品国产一区二区三区2021_啊轻点灬大ji巴太粗太长了网站_91免费黄色软件_99精品久久99久久久久胖女人_亚洲成a∧人片在线播放无码_岳肥肉紧嫩嫩伦69_久久久久青草线蕉亚洲_国产无夜激无码av毛片 | jizzjizz欧美69巨大_久久青色_日韩一区二区三区精品视频第3页_久久九七_国产精品久久毛片A片_日韩精品中文字幕在线_97久久精品久久免费观看_天堂在线资源中文在线观看 | 99久久精品免费精品国产_亚洲国产精品无码一区二区_精品人妻少妇一区二区三区不卡_亚洲欧美天堂网_99久久九九社区精品_久久久久久久亚洲视频_午夜DV内射一区区_国产婷婷一区二区三区久久 | 国产精品小视频在线观看_国产成人99精品免费视频明星_欧美又大又粗又硬又色A片_国产日本亚洲_成人妇女淫片aaaa视频_日本色妞_忍着娇喘人妻被中出中文字幕_夜夜躁狠狠躁日日躁2022 | 国产熟妇的荡欲午夜视频_韩剧免费观看高清完整_女人色熟女乱_久久精品国产亚_日韩欧美一级视频_欧美xxxxx在线观看_日本免费视频www_欧美黑人牲交videossexeso | 97视频入口_美女夫妻内射潮视频_欧美3p两根一起进高清视频_国产在线不卡_超碰在线最新地址_国产视频只有这里有精品最新_99国产精品99久久久久久粉嫩_成人在线视频国产 | 成年人视频在线看_欧美久久性视频_超碰aⅴ人人做人人爽欧美_噜噜噜91成人网_亚洲欧美丝袜精品久久_国产精品成人无码A片免费网址_91一二区_91久久久精品国产一区二区蜜臀 | 久久久久久久久久久97_葵司qvod_九色永久网址_综合色国产_精品一区精品二区制服_日韩精品成人一区二区在线观看_欧美视频一二三区_一女三黑人理论片在线 | 国产成人综合色在线观看网站_无人区乱码一区二区三区_宝贝小嫩嫩好紧好爽H视频_性做久久久久久免费观看_国产伦久视频在线观看_亚洲国产一线二线三线_少妇欲求不满_免费看国产一级片 | 国产91超漂亮magnet_国产三级爽死你久久精品_欧美欲妇xxxxx_91免费在线观看网站_琪琪秋霞午夜av影院_亚洲欧洲成人av_人妻少妇无码专视频在线_免费无码又爽又刺激网站 |