mybatis之<trim prefix="" suffix="" suffixOverrides="" prefixOverrides=""></trim>的含义

1.<trim prefix="" suffix="" suffixOverrides="" prefixOverrides=""></trim>

prefix:在trim标签内sql语句加上前缀。

suffix:在trim标签内sql语句加上后缀。

prefixOverrides:指定去除多余的前缀内容

suffixOverrides:指定去除多余的后缀内容,如:suffixOverrides=",",去除trim标签内sql语句多余的后缀","。

 

 

2.下面是一个往购物车表中插入数据的mybatis语句

<insert id="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>  

 

假设没有指定

  1. 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);这样就将“,”去掉了。

前缀也是一个道理这里就不说了。

 

原文地址:https://www.cnblogs.com/YLQBL/p/8182335.html

<insert id="insertPpElectroplantingList" parameterType="com.hwitec.shrcs.bi.domain.PpElectroplantingList" useGeneratedKeys="true" keyProperty="id"> insert into pp_electroplanting_list <trim prefix="(" suffix=")" suffixOverrides=","> <if test="area != null">`area`,</if> <if test="orderNo != null">`order_no`,</if> <if test="finishedProductNo != null">`finished_product_no`,</if> <if test="materialDesc != null">`material_desc`,</if> <if test="customer != null">`customer`,</if> <if test="segment != null">`segment`,</if> <if test="line != null">`line`,</if> <if test="status != null">`status`,</if> <if test="deliveryStatus != null">`delivery_status`,</if> <if test="pstartTime != null">`pstart_time`,</if> <if test="pfinishedTime != null">`pfinished_time`,</if> <if test="demandDate != null">`demand_date`,</if> <if test="qty != null">`qty`,</if> <if test="pbatch != null">`pbatch`,</if> <if test="delay != null">`delay`,</if> <if test="oee != null">`oee`,</if> <if test="ct != null">`ct`,</if> <if test="doh != null">`doh`,</if> <if test="createBy != null">`create_by`,</if> <if test="createTime != null">`create_time`,</if> <if test="totalTime != null">`total_time`,</if> <if test="teamNo != null">`team_no`,</if> <if test="assignClassName != null">`assign_class_name`,</if> <if test="className != null">`class_name`,</if> <if test="overflow != null">`overflow`,</if> <if test="safedays != null">`safedays`,</if> <if test="dohdiff2 != null">`dohdiff2`,</if> <if test="dohdiff != null">`dohdiff`,</if> <if test="version != null">`version`,</if> <if test="customerProductNo != null">`customer_product_no`,</if> <if test="project != null">`project`,</if> <if test="maxDays != null">`max_days`,</if> <if test="minDays != null">`min_days`,</if> <if test="stock != null">`stock`,</if> <if test="timeDesc != null">`time_desc`,</if> <if test="actualClassNumber != null">`actual_class_number`,</if> <if test="changeTime != null">`change_time`,</if> <if test="mrpdailyVersion != null">`mrpdaily_version`,</if> <if test="cjpVersion != null">`cjp_version`,</if> <if test="paramsClassInfo != null">`params_class_info`,</if> <if test="lockOrder != null">`lock_order`,</if> <if test="updateTime != null">`update_time`,</if> <if test="updateBy != null">`update_by`,</if> <if test="onlyDaily != null">`only_daily`,</if> <if test="beginDate != null">`begin_date`,</if> <if test="endDate != null">`end_date`,</if> <if test="platingType != null">`plating_type`,</if> <if test="faPart != null">`fa_part`,</if> <if test="productNum != null">`product_num`,</if> <if test="machineDemandDate != null">`machine_demand_date`,</if> <if test="type != null">`type`,</if> </trim> <trim prefix="values (" suffix=")" suffixOverrides=","> <if test="area != null">#{area},</if> <if test="orderNo != null">#{orderNo},</if> <if test="finishedProductNo != null">#{finishedProductNo},</if> <if test="materialDesc != null">#{materialDesc},</if> <if test="customer != null">#{customer},</if> <if test="segment != null">#{segment},</if> <if test="line != null">#{line},</if> <if test="status != null">#{status},</if> <if test="deliveryStatus != null">#{deliveryStatus},</if> <if test="pstartTime != null">#{pstartTime},</if> <if test="pfinishedTime != null">#{pfinishedTime},</if> <if test="demandDate != null">#{demandDate},</if> <if test="qty != null">#{qty},</if> <if test="pbatch != null">#{pbatch},</if> <if test="delay != null">#{delay},</if> <if test="oee != null">#{oee},</if> <if test="ct != null">#{ct},</if> <if test="doh != null">#{doh},</if> <if test="createBy != null">#{createBy},</if> <if test="createTime != null">#{createTime},</if> <if test="totalTime != null">#{totalTime},</if> <if test="teamNo != null">#{teamNo},</if> <if test="assignClassName != null">#{assignClassName},</if> <if test="className != null">#{className},</if> <if test="overflow != null">#{overflow},</if> <if test="safedays != null">#{safedays},</if> <if test="dohdiff2 != null">#{dohdiff2},</if> <if test="dohdiff != null">#{dohdiff},</if> <if test="version != null">#{version},</if> <if test="customerProductNo != null">#{customerProductNo},</if> <if test="project != null">#{project},</if> <if test="maxDays != null">#{maxDays},</if> <if test="minDays != null">#{minDays},</if> <if test="stock != null">#{stock},</if> <if test="timeDesc != null">#{timeDesc},</if> <if test="actualClassNumber != null">#{actualClassNumber},</if> <if test="changeTime != null">#{changeTime},</if> <if test="mrpdailyVersion != null">#{mrpdailyVersion},</if> <if test="cjpVersion != null">#{cjpVersion},</if> <if test="paramsClassInfo != null">#{paramsClassInfo},</if> <if test="lockOrder != null">#{lockOrder},</if> <if test="updateTime != null">#{updateTime},</if> <if test="updateBy != null">#{updateBy},</if> <if test="onlyDaily != null">#{onlyDaily},</if> <if test="beginDate != null">#{beginDate},</if> <if test="endDate != null">#{endDate},</if> <if test="platingType != null">#{platingType},</if> <if test="faPart != null">#{faPart},</if> <if test="productNum != null">#{productNum},</if> <if test="machineDemandDate != null">#{machineDemandDate},</if> <if test="type != null">#{type},</if> </trim> </insert> 这个mybatis语句格式有什么问题
最新发布
12-09
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值