当前位置: 首页 > news >正文

mybatis-plus扩展

一、代码生成器

代码生成在Toos中,ConfigDatabase是配置,code Generator是生成代码的

配置信息

代码生成配置

二、DB静态工具

一旦出现了service相互调用,大家可以用DB静态工具调用

public List<UserVO> queryUserAndAddressByIds(List<Long> ids) {//1.查询用户List<User> users = listByIds(ids);if(CollUtil.isEmpty(users)){return Collections.emptyList();}//2.查询地址List<Long> userIds = users.stream().map(User::getId).collect(Collectors.toList());//3.根据用户id查询地址List<Address> addresses = Db.lambdaQuery(Address.class).in(Address::getUserId, userIds).list();//4.把po地址转化为vo地址List<AddressVO> addressVOList = BeanUtil.copyToList(addresses, AddressVO.class);//5将用户地址集合分组处理,相同用户放入到一个集合中Map<Long,List<AddressVO>> addressMap=new HashMap<>(0);if(CollUtil.isNotEmpty(addressVOList)){addressMap = addressVOList.stream().collect(Collectors.groupingBy(AddressVO::getUserId));}//转化为vo返回List<UserVO> list=new ArrayList<>(users.size());for (User user : users) {UserVO vo = BeanUtil.copyProperties(user, UserVO.class);vo.setAddresses(addressMap.get(user.getId()));}return list;}

三、逻辑删除

四、枚举处理器

@JsonValue加在哪个上,查询返回就是哪个值

五、JSON处理器

http://www.dtcms.com/a/389169.html

相关文章:

  • 从x.ai到VSCode:一个AI编程助手的意外之旅
  • SQLite vs MySQL:核心SQL语法差异全面解析
  • 【每日算法】两数相加 LeetCode
  • ActiveMQ底层原理与性能优化
  • Ceph IO流程分段上传(1)——InitMultipart
  • 大数据毕业设计选题推荐-基于大数据的农作物产量数据分析与可视化系统-Hadoop-Spark-数据可视化-BigData
  • 【回归之作】学校实训作业:Day04面向对象思想编程
  • Ubuntu20.04或者Ubuntu24.04 TypeC-连接屏幕不显示问题
  • 【SQLSERVER】SQL Server 表导出与导入
  • postgresql和mongodb谁的地位更高
  • RK3588+复旦微JFM7K325T工业控制解决方案
  • RabbitMQ全方位解析
  • 云望无人机图传原理,无人机图传方式哪种好
  • 无人机50公里遥控模块技术要点与难点
  • 【三维重建】Octree-GS:基于LOD的3DGS实时渲染(TPAMI2025)
  • 《深度拆解3D开放世界游戏中角色攀爬系统与地形碰撞网格动态适配的穿透卡顿复合故障》
  • 数据库mysql连接池:从原理到实践的全面解析
  • # 深入理解栈、栈帧与递归:从迭代与递归归并排序双视角解析
  • Django 完整项目开发:博客系统
  • FPGA部署视觉模型
  • 课后实验实验拓扑:
  • 二阶段 docker 构建
  • React原理二
  • 116.block design 设计中设置的DDR起始地址的作用是什么
  • 报名中|2025 Maple 用户大会
  • 深入解析Channel:数据流动的秘密通道
  • 一键快速发布服务
  • 栈-394.字符串解码-力扣(LeetCode)
  • 【数据库】视图与表的区别:深入理解数据库中的虚拟表
  • 保障货物安全:商贸物流软件的实时追踪与风险预警机制​