Mybatis Plus 中如何精准匹配纯数组和对象数组?
mybatis plus精准匹配纯数组和对象数组
在 mybatis plus 中,匹配数组需要考虑数组的类型,分为纯数组和对象数组。
纯数组
纯数组是指元素类型为基本类型(如 int、float)的数组。对于纯数组,可以使用 like 方法进行匹配,但是需要注意潜在的不精确匹配问题。推荐使用数据库原生 json 支持函数进行精确匹配。例如,在 mysql 中可以使用 json_contains 函数:
string tipid = "1617784249885577217"; wrapper.and(new consumer<querywrapper<object>>() { @override public void accept(querywrapper<object> querywrapper) { querywrapper.last("json_contains(goods_tips_id_list,'" + tipid + "')"); } });
对象数组
对象数组是指元素类型为对象的数组。对于对象数组,无法直接使用 like 方法进行匹配。需要根据对象属性进行单独匹配。例如:
List<Long> tipIdList = new ArrayList<>(); tipIdList.add(1617784249885577217L); tipIdList.add(1615226392250040321L); wrapper.in("goods_tips_id_list", tipIdList);
以上就是Mybatis Plus 中如何精准匹配纯数组和对象数组?的详细内容,更多请关注其它相关文章!