mysql的引号在xml文件的问题?

<select id="getListByFullDiscountReductionId" resultType="com.yhc.common.domain.pojo.Goods" parameterType="string">
    select * from tb_goods

    <where>

        <if test="fullDiscountReductionId != null">
            JSON_CONTAINS(full_discount_reduction_id_list, #{fullDiscountReductionId})
        </if>

    </where>

</select>

在数据库用这个语句里面是没问题的

select * from tb_goods WHERE JSON_CONTAINS(full_discount_reduction_id_list, '"1615237656678371329"')

但是到了java里面的xml文件就不行了,感觉是少了单引号和双引号的包裹,但是在xml里面使用单引号和双引号需要转义,这个怎么转义呀

阅读 2.2k
2 个回答

{}换成${}

XML没问题,而是你应该在调用方法时把 fullDiscountReductionId 这个参数的值用引号包起来:

Goods g = getListByFullDiscountReductionId("\"1615237656678371329\"");
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题