实战--2

一、全局统一异常处理代码解析

java

运行

复制代码
@ControllerAdvice
public class AllExceptionHandler {
    @ExceptionHandler(Exception.class)
    public Result doException(Exception e){
        e.printStackTrace();
        return Result.fail(-999,"系统异常");
    }
}
  1. @ControllerAdvice:全局控制器增强注解,对所有控制器生效。
  2. @ExceptionHandler(Exception.class):捕获项目中所有未手动捕获的异常。
  3. 执行逻辑:打印异常堆栈信息,统一返回错误码 -999 与提示信息 系统异常

二、热门标签查询业务代码解析

java

运行

复制代码
@Override
public Result hots(int limit) {
    // 查询热度靠前的标签ID集合
    List<Long> tagIds = tagMapper.findHotsTagIds(limit);
    // 判断集合是否为空
    if (CollectionUtils.isEmpty(tagIds)){
        return Result.success(Collections.emptyList());
    }
    // 根据标签ID批量查询标签信息
    List<Tag> tagList = tagMapper.findTagsByTagIds(tagIds);
    return Result.success(tagList);
}
  1. 接收参数 limit,用于限定返回标签数量。
  2. 调用 Mapper 层方法,按热度查询对应数量的标签 ID。
  3. 做非空判断,无数据则返回空集合。
  4. 根据标签 ID 批量查询标签完整数据,封装结果并返回。
相关推荐
Chase_______2 小时前
【Java杂项】final 关键字详解:变量、方法、类限制与引用可变性
java·开发语言·python
用户398346161202 小时前
Go-Spring 实战第 15 课 —— Condition:根据配置和上下文激活 Bean
spring·go
凤山老林2 小时前
DDD(领域驱动设计)在复杂业务系统中的落地指南
java·开发语言·数据库·ddd·领域驱动
JEECG低代码平台2 小时前
JimuChatBI — 首款免费开源的 Java 智能问数ChatBI平台,零成本接入,AI对话式智能分析
java·人工智能·开源·aigc·人工智能低代码
霸道流氓气质2 小时前
SpringBoot中使用Spring AI框架集成本地Ollama实现AI快速对话完整示例
人工智能·spring boot·spring
星梦清河3 小时前
Java—异步编程
java·开发语言
GIS数据转换器3 小时前
智慧能源管理平台
java·大数据·运维·人工智能·无人机
garmin Chen3 小时前
LeetcodeHot100打卡(14、合并空间,15、轮转数组,16、除了自身以外数组乘积,17.缺失的第一个整数)
java·笔记·学习·算法
接着奏乐接着舞3 小时前
dto 转entity方法
java·开发语言