疯疯嚯嚯的程序员 2020-08-03 09:23 采纳率: 50%
浏览 687
已结题

controller层传入的参数是map,在mapper.xml中if test 语句怎么写?

1、controller层传入的参数是map,在mapper.xml中if test 语句怎么写?

这是详细的代码:
controller

dao

mapper

我直接取得值,但是查询的时候查询条件不起作用,想到参数是map,是根据key,value取值的,进行了修改,还是无法进行一个条件查询,所以大佬们看一看,给个建议,谢谢了

  • 写回答

3条回答 默认 最新

  • Kevin.Y.K 2020-08-03 09:42
    关注
    1. 检查一下的参数名,确定是sql_filter,不是sqlFilter?
    2. status一般是整型,只需要写 "status != null"
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
  • _知道者丶 2020-08-03 09:50
    关注

    不太理解题目表达的意思,controller传入map与mapper文件没什么关联。你DAO层传入给mapper才是最重要的,你想在if test里做检验,完权可以在service层处理map中的value然后再传给mapper做匹配。整型用interge,字符串用string,都用包装数据类型。

    评论
  • 牧子与羊 2020-08-03 15:28
    关注

    用的mybatis吧,这里可以给dao层的入参取一个别名List<Entity> list(@Param("别名") Map params),然后在你的xml里面这个别名就指代你的map,比如你要取“name”,就

    <if test="别名.name != null and 别名.name != ‘’">
                and abc = #{别名.name}
    </if>
    

    这样就可以拿到。

    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 12月22日
  • 已采纳回答 12月22日

悬赏问题

  • ¥15 MYSQL 订单的商品明细重复计算问题
  • ¥15 微信实时共享位置修改
  • ¥100 TG的session协议号转成直登号号后客户端登录几分钟后自动退出设备
  • ¥30 共模反馈回路的小信号增益
  • ¥15 arduino ssd1306函数与tone函数放歌代码不兼容问题
  • ¥70 0.96版本hbase的row_key里含有双引号,无法deleteall
  • ¥40 Ida Pro增加插件出现问题
  • ¥15 诊断性META分析合并效能的检验
  • ¥15 请问abb根据色块判断奇偶数并根据批次号放入仓储
  • ¥66 开发PC客户端一定也要开发上位机吗?