色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

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

mybatis框架xml下trim中的prefix與suffix等標簽的用法

瀏覽:2日期:2023-10-18 16:19:49
trim中prefix與suffix等標簽用法

1.prefix 前綴增加的內容

2.suffix 后綴增加的內容

3.prefixOverrides 前綴需要覆蓋的內容,一般是第一個判斷條件前面的多余的結構,如:第一個判斷條件前面多了 ‘and’

select * from User where name=’zhangsan’ and age=’20’;

<select id=’queryUser’>select * from User<trim prefix=’where’ prefixOverrides=’and’> <if test='name != null and name != ’’'>name = #{name} </if> <if test='age !=null and age !=’’'>and age = #{age} </if></trim><select>

第一個條件前面沒有任何符號,第二個條件要加上and,否則sql語句會報錯。很理想的狀態是第一個和第二個都有值,但是既然判斷,說明也可能會沒有值,當第一個name沒有值的時候,這個時候sql語句就會是 select * from User where and age=’’,很明顯這個sql語句語法存在問題。

在這里標簽屬性prefixOverrides就起作用了,它會讓前綴where覆蓋掉第一個and。覆蓋之后的是:select * from User where age=’’;

4.suffixOverrides 后綴需要覆蓋的內容,一般是最后一個數據的后面符號,如:set值的時候,最后一個值的后面多一個逗號‘,’

<insert parameterType='org.javaboy.vhr.model.Salary'>insert into salary<trim prefix='(' suffix=')' suffixOverrides=','> <if test='id != null'>id, </if> <if test='basicSalary != null'>basicSalary, </if> <if test='bonus != null'>bonus, </if> <if test='lunchSalary != null'>lunchSalary, </if> <if test='trafficSalary != null'>trafficSalary, <if test='name != null'>name, </if></trim><trim prefix='values (' suffix=')' suffixOverrides=','> <if test='id != null'>#{id,jdbcType=INTEGER}, </if> <if test='basicSalary != null'>#{basicSalary,jdbcType=INTEGER}, </if> <if test='bonus != null'>#{bonus,jdbcType=INTEGER}, </if> <if test='lunchSalary != null'>#{lunchSalary,jdbcType=INTEGER}, </if> <if test='trafficSalary != null'>#{trafficSalary,jdbcType=INTEGER}, </if> <if test='name != null'>#{name,jdbcType=VARCHAR}, </if></trim> </insert>加了suffixOverrides=','

結果:

insert into salary (id,basicSalary,bonus,lunchSalary,trafficSalary,name) values (#{id},#{basicSalary},#{bonus},#{lunchSalary},#{trafficSalary},#{name})不加suffixOverrides=','

結果:

insert into salary (id,basicSalary,bonus,lunchSalary,trafficSalary,name,) values (#{id},#{basicSalary},#{bonus},#{lunchSalary},#{trafficSalary},#{name},)

加了suffixOverrides=','的話,本例中最后一個條件中的逗號“,”會被后綴覆蓋掉

mybatis之 trim prefix='(' suffix=')'1.如下所示

<trim prefix='' suffix='' suffixOverrides='' prefixOverrides=''></trim>

prefix:在trim標簽內sql語句加上前綴。

suffix:在trim標簽內sql語句加上后綴。

suffixOverrides:指定去除多余的后綴內容,如:suffixOverrides=',',去除trim標簽內sql語句多余的后綴','。

prefixOverrides:指定去除多余的前綴內容

2.下面是一個往購物車表中插入數據的mybatis語句

<insert parameterType='com.tortuousroad.groupon.cart.entity.Cart'>insert into cart<trim prefix='(' suffix=')' suffixOverrides=','> <if test='id != null'>id, </if> <if test='userId != null'>user_id, </if> <if test='dealId != null'>deal_id, </if> <if test='dealSkuId != null'>deal_sku_id, </if> <if test='count != null'>count, </if> <if test='createTime != null'>create_time, </if> <if test='updateTime != null'>update_time, </if></trim><trim prefix='values (' suffix=')' suffixOverrides=','> <if test='id != null'>#{id,jdbcType=BIGINT}, </if> <if test='userId != null'>#{userId,jdbcType=BIGINT}, </if> <if test='dealId != null'>#{dealId,jdbcType=BIGINT}, </if> <if test='dealSkuId != null'>#{dealSkuId,jdbcType=BIGINT}, </if> <if test='count != null'>#{count,jdbcType=INTEGER}, </if> <if test='createTime != null'>#{createTime,jdbcType=TIMESTAMP}, </if> <if test='updateTime != null'>#{updateTime,jdbcType=TIMESTAMP}, </if></trim> </insert>

suffixOverrides=','

執行的sql語句也許是這樣的:insert into cart (id,user_id,deal_id,) values(1,2,1,);顯然是錯誤的

指定之后語句就會變成insert into cart (id,user_id,deal_id) values(1,2,1);這樣就將“,”去掉了。

前綴也是一個道理這里就不說了。

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Mybatis 數據庫
相關文章:
主站蜘蛛池模板: 性欧美videos高清精品 | 欧美一区二区三区不卡 | 成人国产在线24小时播放视频 | 久久伊人精品热在75 | 欧美 日韩 国产在线 | 一级片www | 全部孕妇毛片丰满孕妇孕交 | 欧美精品免费在线 | 大视频在线爱爱爱爱 | 成年18网站免费视频网站 | 真人一级毛片全部免 | 鲁大师成人精品视频 | 国产亚洲欧美ai在线看片 | 3至13呦女毛片| 玖玖在线国产精品 | 欧美 亚洲 中文字幕 | 久久观看视频 | 国产精品自在欧美一区 | 欧美性高清视频免费看www | 在线视频 国产交换 | 成人欧美视频在线观看播放 | 怡红院成人网 | 老王午夜69精品影院 | 亚洲三级精品 | 九草在线 | 国产日本欧美亚洲精品视 | 亚洲国产精品区 | 久久性妇女精品免费 | 中文字幕中文字幕中中文 | 欧美精品一区二区三区免费观看 | 正在播放国产大学生情侣 | 最新国产精品视频免费看 | 玖玖精品 | 国产人成久久久精品 | 国内精品a | 亚洲国产日韩欧美高清片a 亚洲国产日韩欧美在线 | 亚洲精品一区二三区在线观看 | 永久毛片 | 在线观看国产精品入口 | 国产一级大片 | 欧美亚洲日本韩国一级毛片 |