nimoqq 2017-10-11 02:24 采纳率: 60.7%
浏览 3364

mybatis 对于特殊字符问题处理

  <select id="getVagueQuery" parameterType="java.lang.String" resultType="com.kangwei.pojo.tz.T_SB_SCFZSS_SD">
        SELECT
            OBJ_ID,
            JMLX,
            DMCC,
            SDCD,
            JSL,
            SGDW,
            JGRQ,
            YWDWMC,
            WHBZMC,
            SDMC,
            SDBH,
            WHBZ,
            ZCXZ,
            DAMC
        FROM SCYW.T_SB_SCFZSS_SD
        WHERE SCYW.T_SB_SCFZSS_SD.SDBH LIKE concat(concat('%', #{value}), '%') OR SCYW.T_SB_SCFZSS_SD.SDMC LIKE concat(concat('%', #{value }), '%')
    </select>

图片说明

输入%,传进去的也是一个%,但是查询出来了所有数据,网上查的对传入的百分号加上[]就可以了,试了一下确实可以.我是在java代码里判段的,感觉我这个方法还是不好,如果遇到其他特殊字符还是不行,下面是我代码,大神们还有其他方法吗

  if(newContent.equals("%")){
            String newContent1 = "[%]";
            System.out.println(newContent1);
            return sdService.getVagueQuery(newContent1, page, limit);
        }
  • 写回答

2条回答 默认 最新

  • devmiao 2017-10-11 03:00
    关注
    评论

报告相同问题?

悬赏问题

  • ¥15 一道python难题2
  • ¥15 一道python难题
  • ¥15 用matlab 设计一个不动点迭代法求解非线性方程组的代码
  • ¥15 牛顿斯科特系数表表示
  • ¥15 arduino 步进电机
  • ¥20 程序进入HardFault_Handler
  • ¥15 oracle集群安装出bug
  • ¥15 关于#python#的问题:自动化测试
  • ¥20 问题请教!vue项目关于Nginx配置nonce安全策略的问题
  • ¥15 教务系统账号被盗号如何追溯设备