苍穹外卖--员工分页查询

请求参数封装:

cpp 复制代码
@Data
public class EmployeePageQueryDTO implements Serializable {

    //员工姓名
    private String name;

    //页码
    private int page;

    //每页显示记录数
    private int pageSize;

}

请求结果封装:

cpp 复制代码
public class PageResult implements Serializable {

    private long total; //总记录数

    private List records; //当前页数据集合

}

Controller层

cpp 复制代码
 @GetMapping("/page")
    @ApiOperation("员工分页查询")
    public Result<PageResult> page(EmployeePageQueryDTO employeePageQueryDTO){
        log.info("员工分页查询,参数为:{}", employeePageQueryDTO);
        PageResult pageResult = employeeService.pageQuery(employeePageQueryDTO);//后续定义
        return Result.success(pageResult);
    }

Service层

cpp 复制代码
public PageResult pageQuery(EmployeePageQueryDTO employeePageQueryDTO) {
        // select * from employee limit 0,10
        //开始分页查询
        PageHelper.startPage(employeePageQueryDTO.getPage(), employeePageQueryDTO.getPageSize());

        Page<Employee> page = employeeMapper.pageQuery(employeePageQueryDTO);//后续定义

        long total = page.getTotal();
        List<Employee> records = page.getResult();

        return new PageResult(total, records);
    }

Mapper层

cpp 复制代码
Page<Employee> pageQuery(EmployeePageQueryDTO employeePageQueryDTO);
cpp 复制代码
在 src/main/resources/mapper/EmployeeMapper.xml 中编写SQL:
cpp 复制代码
<select id="pageQuery" resultType="com.sky.entity.Employee">
        select * from employee
        <where>
            <if test="name != null and name != ''">
                and name like concat('%',#{name},'%')
            </if>
        </where>
        order by create_time desc
    </select>

代码完善

时间的格式有问题:

在WebMvcConfiguration中扩展SpringMVC的消息转换器,统一对日期类型进行格式处理

cpp 复制代码
protected void extendMessageConverters(List<HttpMessageConverter<?>> converters) {
        log.info("扩展消息转换器...");
        //创建一个消息转换器对象
        MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter();
        //需要为消息转换器设置一个对象转换器,对象转换器可以将Java对象序列化为json数据
        converter.setObjectMapper(new JacksonObjectMapper());
        //将自己的消息转化器加入容器中
        converters.add(0,converter);
    }
相关推荐
m0_5873830025 分钟前
24小时自助健身房软硬件解决方案实战:从架构设计到部署指南
java·spring·小程序·架构·需求分析
木头科技2 小时前
AI 工程化第四篇】Spring AI Agent 线上可观测实战:Token 成本、调用链、工具耗时、RAG 命中率怎么监控
java·人工智能·spring
imDwAaY4 小时前
Bean的生命周期
java·笔记·后端·学习·spring·dubbo
上下求索,莫负韶华4 小时前
Spring全家桶
java·后端·spring
浪子明X4 小时前
用 CMake Presets 固定跨平台构建:从本地开发到 CI 的依赖一致性实践
java·spring·ci/cd
Wx-bishekaifayuan5 小时前
Springcloud中学在线学习平台58883-计算机课程设计、毕业设计
java·vue.js·spring boot·学习·spring·spring cloud·课程设计
现任明教教主~17 小时前
Thinkphp站群蜘蛛池SaaS系统YanyvSEO含多用户/积分/六大引擎计费/易支付对接
java·开发语言·spring
卓怡学长21 小时前
w204基于springbo旅行社签证代理服务系统
java·spring boot·spring·intellij-idea
牧瀬クリスだ21 小时前
Spring统一功能处理
java·spring boot·spring·状态模式
nhdh1 天前
SpringAI与SpringAIAlibaba:标准与生态的完美互补
java·人工智能·spring