mybatis_“xml之模糊查询“

文章讨论了在使用TEMPLATE_DESCLIKE语句时遇到的单引号问题,正确的方法是使用拼接符来构建查询表达式,避免了额外的单引号导致的语法错误。
#改成$,占位符改成拼接符
会多出来单引号,成这样了:TEMPLATE_DESC like '%'||'测试数据'||'%'

正确写法:
在这里插入图片描述

### MyBatis Plus 查询 JSON 示例教程 在现代应用程序开发中,处理复杂的JSON数据结构成为了一项常见任务。为了满足这一需求,在MyBatis-Plus (MP) 中可以采用特定的方式来进行JSON字段的操作。 对于想要执行基于JSON字段的查询操作而言,定义实体类时指定`typeHandler`属性是非常重要的[^2]。这使得能够通过自定义处理器来解析和序列化JSON对象到数据库中的TEXT或其他适合存储JSON字符串的数据类型。例如: ```java @TableName(value = "tb_user", autoResultMap = true) public class User { @TableField(typeHandler = JacksonTypeHandler.class) private List<String> tags; } ``` 当涉及到具体的查询逻辑实现方面,假设有一个名为`tags`的列表作为用户的标签集合,并且希望找到所有包含某个特定标签(比如:"technology")在内的用户记录,则可以在Mapper接口里编如下方法签名: ```java import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import java.util.List; List<User> selectUsersWithTag(String tag); ``` 接着是在对应的XML文件或者是动态SQL构建器内完成实际的SQL语句构造工作。这里给出一种使用QueryWrapper简化条件拼接的例子: ```java // 构建查询条件 QueryWrapper<User> queryWrapper = new QueryWrapper<>(); queryWrapper.like("tags", "\"" + targetTag + "\""); // 执行查询并获取结果集 List<User> usersWithTargetTag = userMapper.selectList(queryWrapper); ``` 上述代码片段展示了如何利用`like`关键字配合双引号包裹的目标标签值进行模糊匹配查询。需要注意的是这种方法依赖于底层数据库引擎对JSON路径表达式的识别能力以及性能表现;不同版本之间可能存在差异因此建议查阅官方文档了解最新特性和支持情况[^1]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值