管理系统 后端问题 (1)mybatis模糊查询

使用mysql实现模糊查询,对于不同参数类型,使用同一种方法,我在查询的过程中会出现错误,对于String类型和Int类型,使用下面这两种方法,测试后均能成功实现模糊查询。

1、参数为String类型

dao层接口文件,其中queryString均为前端传过来的参数,因为我的查询字段非常多,所以传过来的参数也比较多

List<Patent> findByCondition(@Param("queryString") String queryString,@Param("queryString11") String queryString11,@Param("queryString22") String queryString22,@Param("queryString3") String queryString3,@Param("queryString4") String queryString4,@Param("queryString5") String queryString5);

这其中我所有的参数类型均为String类型

<select id="findByCondition" resultType="patent">
        select * from t_patent
        <where>
            1 = 1
            <if test="queryString != null">
                and id = #{queryString }
            </if>
            <if test="queryString11 != null">
                and name like "%"#{queryString11}"%"
            </if>
            <if test="queryString22 != null">
                and number like "%"#{queryString22}"%"
            </if>
            <if test="queryString3 != null">
                and inventor like "%"#{queryString3}"%"
            </if>
            <if test="queryString4 != null">
                and status like "%"#{queryString4}"%"
            </if>
            <if test="queryString5 != null">
                and technosphere like "%"#{queryString5}"%"
            </if>
        </where>
</select>

2、参数为int类型

dao层接口文件,queryString1和queryString2为前端传过来的参数

List<Brand> findByCondition(@Param("queryString1") Integer queryString1, @Param("queryString2") Integer queryString2);

对queryString2实现模糊查询,queryString2为int类型时

<select id="findByCondition" resultType="brand">
        select * from t_brand
        <where>
            1 = 1
            <if test="queryString1 != null ">
                and id = #{queryString1 }
            </if>
            <if test="queryString2 != null ">
                and registerNumber like '%${queryString2}%'
            </if>
        </where>
</select>

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值