首页 > 基础资料 博客日记
springboot~mybatis-plus中使用TypeHandler做类型映射
2024-04-23 18:00:03基础资料围观745次
本篇文章分享springboot~mybatis-plus中使用TypeHandler做类型映射,对你有帮助的话记得收藏一下,看Java资料网收获更多编程知识
mybatis-plus中,如果数据表字段类型与java实体字段类型不一样,这时就需要做类型映射与转换了,我们一般可以实现TypeHandler接口,或者继承抽象类BaseTypeHandler,我们下面举例来说明一下它的使用方法。
场景
- 数据表里字段是varchar,java里是List集合,例如:我的爱好标签
- 数据表里字段是varchar,java里是个Map对象,例如:我曾经居住过的地方
操作步骤
实体类
- 类注解的参数
autoResultMap = true,它影响TypeHandler中的getResult方法的执行 - 字段注解
@TableField(typeHandler = ListTypeHandler.class)
@Data
@TableName(value = "t_user", autoResultMap = true)
public class TUser extends BaseEntity {
private String username;
@TableField(typeHandler = MapTypeHandler.class)
private Map extensionInfo;
@TableField(typeHandler = ListTypeHandler.class)
private List<String> likeList;
}
插入方法
@Test
public void insert() {
TUser user = new TUser();
user.setUsername("lind");
user.setExtensionInfo(new HashMap() {{
put("city", "beijing");
put("area", "shijingshan");
}});
user.setLikeList(java.util.Arrays.asList("basketball", "football"));
userDao.insert(user);
}
获取方法
@Test
public void read() {
QueryWrapper<TUser> wrapper = new QueryWrapper<>();
wrapper.lambda().eq(TUser::getCreateBy, 1);
log.info("user1:{}", userDao.selectList(wrapper));
}
获取结果

文章来源:https://www.cnblogs.com/lori/p/18153452
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!
标签:
相关文章
最新发布
- 莱特摩比的一面之缘(前端经验)
- 洛谷-P10786 [NOI2024] 百万富翁 题解
- PyTorch KernelAgent 源码解读 ---(3)--- orchestrator
- OpenClaw.NET 外部 CLI 预设系统:从零编写第三方 CLI 集成指南
- Agent Harness 的 Session Tree View:让每一个 Agent 做自己擅长的事情!
- 二、OpenCloudOS Server 9 系统 安装 Nginx
- AI 开发狂飙!.NET 11 Preview 4 原生集成向量搜索 + MCP 模板,EF Core 直接对标 RAG 应用
- Vibe Coding有多强?我只花了一天,就搓出了这个银行开户行查询网站!
- 100条cmd命令大全
- C# ESP32/STM32 轻量 Web 能力库:PicoServer.Nano

