mybatis中的<trim prefix="" suffix="" suffixOverrides="" prefixOverrides=""></trim>说明

1.<trim prefix="" suffix="" suffixOverrides="" prefixOverrides=""></trim>
prefix:在trim标签内sql语句加上前缀。
suffix:在trim标签内sql语句加上后缀。
suffixOverrides:指定去除多余的后缀内容,如:suffixOverrides=",",去除trim标签内sql语句多余的后缀","。

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

<insert id="insertSelective" parameterType="com.hph.entity.TeaEval">
    insert into teaeval
    <trim prefix="(" suffix=")" suffixOverrides=",">
      <if test="id != null">
        Id,
      </if>
      <if test="classname != null">
        className,
      </if>
      <if test="coursename != null">
        courseName,
      </if>
      <if test="teachername != null">
        teacherName,
      </if>
      <if test="teacherscore != null">
        teacherScore,
      </if>
    </trim>
    <trim prefix="values (" suffix=")" suffixOverrides=",">
      <if test="id != null">
        #{id,jdbcType=INTEGER},
      </if>
      <if test="classname != null">
        #{classname,jdbcType=VARCHAR},
      </if>
      <if test="coursename != null">
        #{coursename,jdbcType=VARCHAR},
      </if>
      <if test="teachername != null">
        #{teachername,jdbcType=VARCHAR},
      </if>
      <if test="teacherscore != null">
        #{teacherscore,jdbcType=INTEGER},
      </if>
    </trim>
  </insert>

执行的sql语句也许是这样的:insert into teaeval (id,classname,coursename,) values(1,软件2班,数据结构,);显然是错误的

指定之后语句就会变成insert into teaeval ( id,classname,coursename) values(1,软件2班,数据结构);这样就将“,”去掉了。
前缀也是一个道理这里就不说了。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值