日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

MyBatis動態SQL實現配置過程解析

瀏覽:30日期:2023-10-24 10:51:59

動態SQL

什么是動態SQL:

​ 動態SQL就是根據不同的條件生成不同的SQL語句

if choose(when,otherwise) trim(where,set) foreach

1、搭建環境

建表

CREATE TABLE `bolg`( `id` VARCHAR(50) NOT NULL COMMENT ’博客id’, `title` VARCHAR(100) not null comment ’博客標題’, `author` VARCHAR(30) not null comment ’博客作者’, `creat_time` datetime not null comment ’創建時間’, `views` int(30) not null comment ’瀏覽量’)ENGINE=InnoDB DEFAULT CHARSET=utf8

創建一個基礎工程

導包

編寫配置文件

編寫實體類

@Datapublic class Blog { private int id; private String title; private String author; private Date creatTime; private int views;}

編寫實體類對應的Mapper接口和Mapper.xm

2、IF

<select parameterType='map' resultType='com.rui.pojo.Blog'> select * from mybatis.bolg where 1=1 <if test='title != null'> and title = #{title} </if> <if test='author != null'> and author = #{author} </if></select>

@Testpublic void queryBlogIF(){ SqlSession sqlSession = MyBatisUtils.getSqlSession(); BlogMapper mapper = sqlSession.getMapper(BlogMapper.class); HashMap map = new HashMap(); map.put('author','尹銳'); List<Blog> blogs = mapper.queryBlogIF(map); for (Blog blog : blogs) { System.out.println(blog); } sqlSession.close();}

3、choose(when,otherwise)

<select parameterType='map' resultType='com.rui.pojo.Blog'> select * from mybatis.bolg <where> <choose> <when test='title != null'>title=#{title} </when> <when test='author!=null'>and author = #{author} </when> <otherwise>and views = #{views} </otherwise> </choose> </where></select>

4、trim(where,set)

select * from mybatis.bolg<where><if test='title != null'> title = #{title}</if><if test='author != null'> and author = #{author}</if></where>

<update parameterType='map'> update mybatis.bolg <set> <if test='title != null'> title = #{title}, </if> <if test='author != null'> author = #{author}, </if> </set> where id = #{id}</update>

所謂的動態SQL,本質還是SQL語句,只是我們可以在SQL層面,去執行一些邏輯代碼

5、Foreach

select * from user where 1=1 and <foreach item='id' index='index' collection='ids' open='(' separator='or' close=')'> #{id} </foreach>(id=1 or id=2 or id=3)

MyBatis動態SQL實現配置過程解析

<!--select * from mybatis.bolg where 1=1 and (id=1 or id=2 or id=3)我們現在傳遞一個萬能的map,這個map中可以存在一個map--><select parameterType='map' resultType='com.rui.pojo.Blog'> select * from mybatis.bolg <where> <foreach collection='ids' item='id' open='(' close=')' separator='or'> id = #{id} </foreach> </where></select>

動態SQL就是在拼接SQL語句,我們只要保證SQL的正確性,按照SQL的格式,去排列組合就可以了

建議:

先在MySQL中寫出完整的SQL,再對應的去修改成為我們的動態SQL

SQL片段

有的時候,我們可能會將一些公共的部分抽取處理,方便復用

使用SQL標簽抽取公共的部分

<sql id='if-title-author'> <if test='title != null'> title = #{title} </if> <if test='author != null'> and author = #{author} </if></sql>

在需要使用的地方使用Include標簽引用即可

<select parameterType='map' resultType='com.rui.pojo.Blog'> select * from mybatis.bolg <where> <include refid='if-title-author'></include> </where></select>

注意事項:

最好基于單表來定義SQL片段

不要存在where或者set標簽,片段里盡量只有if就好了

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Mybatis 數據庫
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
久色成人在线| 国产精品xvideos88| 国产精品资源| 美女精品一区二区| 久久一区二区三区电影| 久久亚洲在线| 欧美日韩 国产精品| 日韩欧美一区免费| 视频在线在亚洲| 国内自拍视频一区二区三区| 久久久9色精品国产一区二区三区| 欧美激情网址| 麻豆国产欧美一区二区三区 | 樱桃成人精品视频在线播放| 在线精品福利| 中文av在线全新| 国产亚洲一区| 亚洲欧美日韩精品一区二区| 日韩精品一级中文字幕精品视频免费观看| 国产精品中文字幕亚洲欧美| 午夜精品影院| 国产成人精品一区二区三区免费| 蜜臀av一区二区在线免费观看 | 久久久夜夜夜| 久久久久久自在自线| 中文另类视频| 日韩精品免费视频一区二区三区| 99视频精品全部免费在线视频| 国产精品亚洲人成在99www| 欧美在线观看视频一区| 国产精品一区高清| 免费在线看一区| 久久香蕉精品| 亚洲激情偷拍| 欧美黄页在线免费观看| 亚洲在线观看| 激情综合在线| 欧美美女一区| 亚洲国产不卡| 婷婷久久一区| 激情久久久久久| 99久久婷婷| 亚洲电影在线一区二区三区| 福利一区二区三区视频在线观看| 亚洲女同av| 久久精品国产99国产精品| 欧美久久一区二区三区| 亚洲精品黄色| 日韩国产欧美视频| 日韩精品亚洲专区在线观看| 美女久久一区| 日韩福利视频导航| 日本v片在线高清不卡在线观看| 午夜一级在线看亚洲| 日韩视频中文| 国产欧美另类| 国产传媒在线| 91欧美国产| 欧美日韩色图| 久久精品97| 国产99久久| 欧美天堂一区| 久久蜜桃av| 日韩av成人高清| 在线中文字幕播放| 国产99精品一区| 亚洲区第一页| 国产一区二区三区四区| 欧美高清不卡| 国产精品嫩模av在线| 亚洲视频综合| 久久精品色播| 亚洲狼人精品一区二区三区| 中文在线资源| 欧美自拍一区| 欧美~级网站不卡| 激情不卡一区二区三区视频在线| 91久久在线| 久久精品一区二区不卡| 欧美1区二区| 影院欧美亚洲| 国产视频一区二区在线播放| 国产极品一区| 丁香婷婷久久| 日韩视频一区| 日韩av中文在线观看| 欧美日韩亚洲一区在线观看| 久久精品国产免费| 伊人久久大香线蕉av不卡| 日韩成人免费| 久久国产精品免费一区二区三区| 米奇777超碰欧美日韩亚洲| 亚洲少妇一区| 亚洲ab电影| 国产一区二区色噜噜| 国产va在线视频| 亚洲欧美日韩高清在线| 蜜桃久久久久久| 国产精品亚洲产品| 激情久久婷婷| 亚洲人www| 91日韩在线| 久热精品在线| 久久精品国产久精国产爱| 国产v综合v| 日本va欧美va欧美va精品| 国产在线一区不卡| 成人免费一区| 麻豆国产在线| 成人av二区| 91福利精品在线观看| 精品视频一区二区三区四区五区 | 欧美三区不卡| 国产精品白丝久久av网站| 久久wwww| 亚洲一区网站| 清纯唯美亚洲综合一区| 成人三级高清视频在线看| 亚洲中午字幕| 国产精品一区二区精品| 伊人久久大香线蕉av不卡| 久久av网站| 欧美欧美黄在线二区| 婷婷综合在线| 麻豆精品久久久| 激情欧美国产欧美| 乱人伦精品视频在线观看| 国产伦精品一区二区三区在线播放| 国产精品一国产精品k频道56| 国产一区二区精品久| 欧美日韩激情| 国产精品伊人| 今天的高清视频免费播放成人| 日本欧美久久久久免费播放网| 色一区二区三区四区| 亚洲一二av| 美女毛片一区二区三区四区| 精品一二三区| 亚洲欧美日韩视频二区| 国产精品伦理久久久久久| 影院欧美亚洲| 国产美女视频一区二区| 91精品99| 欧美日韩在线网站| 亚洲不卡系列| 久久国产影院| 日韩精品视频网站| 日韩成人免费| 国产欧美日韩一区二区三区在线| 亚洲激情另类| 精品中文一区| 日韩中文av| 国产九一精品| 综合日韩av| 亚洲国产一区二区在线观看| 国产亚洲欧洲| 久久av影视| 亚洲一区国产| 成人亚洲一区二区| 亚洲少妇在线| 美女av一区| 在线亚洲国产精品网站| 综合激情视频| 中文字幕在线视频网站| 欧美精品黄色| 国产精品白丝一区二区三区| av综合电影网站| 日韩精品亚洲一区二区三区免费| 97国产成人高清在线观看| 午夜亚洲一区| 成人午夜网址| 日韩一区二区三免费高清在线观看| 国产亚洲观看| 午夜在线一区| 午夜精品成人av| 国产欧美精品久久| 丝袜诱惑制服诱惑色一区在线观看| 精品在线网站观看| 天海翼精品一区二区三区| 国产精品国产三级国产在线观看| 蜜桃av一区二区三区电影| 美女一区网站| 国产91在线精品| 欧美黑人做爰爽爽爽| 亚洲人成网77777色在线播放| 一级欧洲+日本+国产| 国产精品久久久久久久免费观看 | 精品国产麻豆| 国产调教精品| 日韩极品在线观看| 亚洲欧美不卡| 亚洲欧美高清| 麻豆一区二区在线| 裤袜国产欧美精品一区| 成人va天堂| 日韩三区四区| 亚洲综合在线电影| 日韩影片在线观看| 天堂av在线| 日本v片在线高清不卡在线观看|