MyBatis Plus 如何精准匹配 JSON 数据中的纯数组和对象数组?
在 mybatis plus 中精准匹配纯数组和对象数组
mybatis plus 是一款优秀的 orm 框架,但在匹配 json 数据时,其默认的 like 方法可能存在误匹配的情况,特别是当需要精准匹配纯数组或对象数组时。
纯数组匹配
对于纯数组,可以使用 mysql 5.7.8 及以上版本提供的 json_contains 函数:
wrapper.and(new consumer<querywrapper<object>>() { @override public void accept(querywrapper<object> wrapper) { wrapper.last("json_contains(goods_tips_id_list, '"" + tipid + "")"); } });
对象数组匹配
对于对象数组,需要将 json 数据解析为 java 对象数组,然后使用 in 方法进行匹配:
List<Long> idList = Arrays.asList(1615226392250040321L, 1617784249885577217L, 1617784414117744641L); wrapper.in("goods_tips_id_list", idList);
通过使用这些方法,可以精准匹配纯数组和对象数组,避免误匹配的情况。
以上就是MyBatis Plus 如何精准匹配 JSON 数据中的纯数组和对象数组?的详细内容,更多请关注其它相关文章!