spring boot mybatis-plus操作实践

1、先建一个数据表实体类

java 复制代码
package com.qilaike.system.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.qilaike.common.annotation.Excel;

public class SysDept 
{
    private static final long serialVersionUID = 1L;

    /** 用户ID */
    private Long technicianId;

    /** 门店ID */
    private Long deptId;
    @Excel(name = "门店")
    private String deptName;

    /** 用户账号 */
    @Excel(name = "用户账号")
    private String userName;

    /** 用户昵称 */
    @Excel(name = "用户昵称")
    private String nickName;
    
    /** 姓名 */
    @Excel(name = "姓名")
    private String idName;
}

2、service目录下新建接口IDeptService,然后扩展mp的IService

java 复制代码
package com.qilaike.system.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.qilaike.common.core.domain.entity.SysDept;

public interface IDeptService extends IService<SysDept>{
}

3、service目录的impl目录下新建类 DeptServiceImpl,扩展mp的ServiceImpl,实现接口IDeptService,然后注册@Service 注解

java 复制代码
package com.qilaike.system.service.impl;

import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.qilaike.common.core.domain.entity.SysDept;
import com.qilaike.system.mapper.DeptMapper;
import com.qilaike.system.service.IDeptService;
import org.springframework.stereotype.Service;

@Service
public class DeptServiceImpl extends ServiceImpl<DeptMapper, SysDept> implements IDeptService {
}

4、DeptMapper 接口需要扩展mp的BaseMapper接口

java 复制代码
public interface SysDeptMapper extends BaseMapper<SysDept>
{
}

5、调试一下看看是否可以使用

java 复制代码
// 部门
LambdaQueryWrapper<SysDept> departmentsLambdaQueryWrapper=new LambdaQueryWrapper<>();
departmentsLambdaQueryWrapper.eq(SysDept::getParentId, deptId);
List<OrgTreeVo> orgTreeVos = new LinkedList<>();
deptService.list(departmentsLambdaQueryWrapper).forEach(dept -> {
    orgTreeVos.add(OrgTreeVo.builder()
            .id(dept.getDeptId())
            .name(dept.getDeptName())
            .selected(false)
            .type("dept")
            .build());
});
相关推荐
小蒜学长6 小时前
基于RFID技术的仓储管理系统设计(代码+数据库+LW)
java·数据库·spring boot·后端·rfid技术·仓储管理
xcl09256 小时前
健身场馆无人自动化系统:从架构设计到落地实践
java·spring boot
FYKJ_20107 小时前
【毕设分享】基于Web的校园兼职信息发布与申请系统07059
前端·vue.js·spring boot·mysql·typescript·spark·课程设计
雪芽蓝域zzs7 小时前
第 1 节:使用 IDEA 创建 SpringBoot4 Maven 项目
spring boot
晴空蓝天9 小时前
Spring Boot 3.5 脚手架里的 JWT + Redis 双轨会话,双端 token 隔离我是这么设计的
java·spring boot·redis
凤山老林9 小时前
RocketMQ 5.0 实战避坑与调优:事务、延迟、轨迹及高可用落地指南
spring boot·rocketmq
TanYYF9 小时前
Spring Boot 2 与 Spring Boot 3 自动装配的区别及 Boot 3 装配流程详解
spring boot
RuoyiOffice9 小时前
SpringBoot3+OnlyOffice 自动保存版本:定时回存、间隔合并与 50 版上限怎么配
spring boot·在线文档·onlyoffice·版本管理·spring boot 3·自动保存·ruoyi office
huaweichenai9 小时前
spring boot使用hutool实现调用外部接口
java·spring boot
dkbnull10 小时前
Spring Boot配置文件敏感信息加密解密
spring boot·后端