mybatis-plus扩展

一、代码生成器

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

配置信息

代码生成配置

二、DB静态工具

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

java 复制代码
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处理器

相关推荐
等....5 小时前
Minio使用
数据库
win x6 小时前
Redis 使用~如何在Java中连接使用redis
java·数据库·redis
迷枫7127 小时前
DM8 数据库安装实战:从零搭建达梦数据库环境(附全套工具链接)
数据库
XDHCOM7 小时前
PostgreSQL 25001: active_sql_transaction 报错原因分析,故障修复步骤详解,远程处理解决方案
数据库·sql·postgresql
卤炖阑尾炎8 小时前
PostgreSQL 日常运维全指南:从基础操作到备份恢复
运维·数据库·postgresql
daad7779 小时前
wifi_note
运维·服务器·数据库
xixingzhe29 小时前
Mysql统计空间增量
数据库·mysql
程序员萌萌10 小时前
Redis的缓存机制和淘汰策略详解
数据库·redis·缓存机制·淘汰策略
不剪发的Tony老师10 小时前
SQLite 3.53.0版本发布,重要更新
数据库·sqlite
Bczheng110 小时前
九.Berkeley DB数据库 序列化和钱包管理(1)
数据库