• 2024-09-14减少 try...catch,定义全局统一异常处理器!【送源码】
    前言软件开发springboot项目过程中,不可避免的需要处理各种异常,springmvc架构中各层会出现大量的try{...}catch{...}finally{...}代码块,不仅有大量的冗余代码,而且还影响代码的可读性。这样就需要定义个全局统一异常处理器,以便业务层再也不必处理异常。推荐理由代码
  • 2024-09-08学习之路(二)
    今天是24.9.8已经开学两周了继续写流水账:暑假确实和上一篇说的一样只回家呆了几天,一直留在学校这边做小项目。这次做的项目和之前的练手不同了,因为一周前真的上线应用了,上线当天就突破1k用户(当然依靠的是老师在迎新时的推广)。现在回过头来看,练手的项目和需要上线的项目真
  • 2024-07-24Sentinel使用
    Sentinel的作用用于流量控制、熔断降级等安装与简单使用git下载Sentinel控制台https://github.com/alibaba/Sentinel/releases/tag/1.8.3,下载后直接使用java-jar命令启动项目引入sentinel依赖<dependency><groupId>com.alibaba.cloud</groupId><artifact
  • 2024-06-01Springboot 开发 -- 统一异常处理最佳实践
    引言在企业级应用开发中,异常处理是保障系统稳定性和可维护性的关键环节。SpringBoot提供了一系列优雅的异常处理机制,帮助开发者更高效地管理和响应异常情况。本文将总结SpringBoot中异常处理的最佳实践。一、异常处理原则在进行异常处理之前,需要明确几个基本的处理
  • 2024-03-13杂项04
    个人项目用到的知识:增删改查,分页,高级查询,Vue+elementUI,Hutool工具包,登录功能,session跨域问题解决,登录拦截…一、后端项目构建1.后端环境搭建构建项目:个人项目是一个基于Springboot+Vue的前后端分离的项目建父项目,父项目是一个空项目,子模
  • 2024-03-05记一次openfeign反序列化异常复盘
    前言之前业务部门有2个通用响应类,一个是负责和前端交互的响应类AjaxResult,一个是负责和后端RPC接口交互的响应类RpcResult。一开始这两个响应类的值字段都一样,形如下 privateBooleansuccess; privateStringmessage; privateIntegercode; privateTdata;因为前端和
  • 2024-01-24手把手带你上手swagger3
    配置POM只需要加一个依赖,并且要注意,swagger3在springboot2.5版本以上会出现问题<dependency><groupId>io.springfox</groupId><artifactId>springfox-boot-starter</artifactId><version>3.0.0</version>
  • 2024-01-06Spring中全局捕获数据库唯一约束等异常,返回友好提示给用户
    controller中有如下新增数据的代码@ApiOperation(value="add",notes="新增数据")@PostMapping("add")publicAjaxResultadd(@RequestBodyXxxx){returnAjaxResult.success(xxxService.save(x));}如果想实现数据唯一性检验,并提示用户有如下方法方法一:代码逻辑层面
  • 2023-12-312023-12-31
    packagecom.example.backendmanage.controller;importcom.example.backendmanage.common.AjaxResult;importcom.example.backendmanage.info.Menu;importcom.example.backendmanage.info.MenuRole;importcom.example.backendmanage.mapper.MenuMapper;importorg.springf
  • 2023-12-242023-12-24
    packagecom.example.backendmanage.controller;importcn.hutool.core.util.IdUtil;importcn.hutool.core.util.RandomUtil;importcn.hutool.core.util.StrUtil;importcn.hutool.extra.mail.MailUtil;importcom.example.backendmanage.common.AjaxResult;importc
  • 2023-12-152023-12-15
    packagecom.example.backendmanage.controller;importcn.hutool.core.io.IoUtil;importcn.hutool.core.util.StrUtil;importcn.hutool.http.server.HttpServerResponse;importcn.hutool.poi.excel.ExcelReader;importcn.hutool.poi.excel.ExcelUtil;importcn.hu
  • 2023-12-11springboot下添加全局异常处理和自定义异常处理
    前言在spring项目中,优雅处理异常,好处是可以将系统产生的全部异常统一捕获处理,自定义的异常也由全局异常来捕获,如果涉及到validator参数校验器使用全局异常捕获也是较为方便。相关代码:GlobalExceptionHandler类:@Slf4j@RestControllerAdvicepublicclassGlobalExceptionHandl
  • 2023-12-05每日总结-23.12.4
    packagecom.example.demo2.controller;importcom.example.demo2.common.AjaxResult;importcom.example.demo2.entity.gongWenInfo;importcom.example.demo2.mapper.gongWenMapper;importorg.springframework.beans.factory.annotation.Autowired;importorg.spring
  • 2023-12-032023-12-3
    packagecom.example.backendmanage.controller;importcom.example.backendmanage.common.AjaxResult;importcom.example.backendmanage.mapper.UserMapper;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.web.bind.annot
  • 2023-11-212023-11-23
    packagecom.example.qiyeerp.controller;importcom.example.qiyeerp.common.AjaxResult;importcom.example.qiyeerp.common.ApplicationVariable;importcom.example.qiyeerp.common.ToolsForAll;importcom.example.qiyeerp.info.*;importcom.example.qiyeerp.mapp
  • 2023-11-07若依框架AjaxResult改造适应Swagger接口文档
    一、概述若依框架后端使用的响应对象AjaxResult,和Swagger存在不兼容问题,导致返回体即使使用了Swagger注解,但是Swagger接口文档中,不显示返回体的对象Swagger文档: 若依Gitee上,也存在此问题:https://gitee.com/y_project/RuoYi-Vue/commit/6805a96e533f56b86aaeecccc2693c6ff40
  • 2023-10-24统一封装结果集和异常类
    1封装统一返回结果类publicclassAjaxResult{//是否成功privateBooleansuccess;//状态码privateIntegercode;//提示信息privateStringmsg;//数据privateObjectdata;publicAjaxResult(){}//自定义返回结果
  • 2023-09-17TienChin 渠道管理-更新渠道接口开发
    ChannelController/***修改渠道*/@PreAuthorize("hasPermission('tienchin:channel:edit')")@Log(title="渠道管理",businessType=BusinessType.UPDATE)@PutMappingAjaxResultedit(@Validated@RequestBodyChannelVOchannelVO){
  • 2023-08-18mybatis分页插件
    引入依赖<!--core--><dependency><groupId>com.juxi</groupId><artifactId>juxi-common-core</artifactId><exclusions><exclusion><groupId>com.baomidou</groupId>
  • 2023-08-06基于mybatis-plus的Api开发记实
    近日基于mybatis-plus的应用做了应用体验,现将主要步骤进行记录,以便后日使用可参考借鉴1.新建springboot应用,仅仅保留pom.xml文件a.基础依赖<parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId>
  • 2023-07-30硬件管理平台 - 公共项目搭建(Nancy部分)
    项目变更之前使用的是Nancy库进行项目搭建的,使用的Nuget版本及其他引用如下<?xmlversion="1.0"encoding="utf-8"?><packages> <packageid="Microsoft.AspNet.WebApi.Client"version="5.1.1"targetFramework="net451"/> <
  • 2023-05-11SpringBoot中@ControllerAdvice/@RestControlAdvice+@ExceptionHandler实现全局异常捕获与处理
    场景在编写Controller接口时,为避免接口因为未知的异常导致返回不友好的结果和提示。如果不进行全局异常捕获则需要对每个接口进行try-catch或其他操作。 可以对Controller进行全局的异常捕获和处理,一旦发生异常,则返回通用的500响应码与通用错误提示。并将异常发生的具体的
  • 2023-04-03脑干软件接口实现
    接口分析今天写了一个删除用户运动指数的接口,运动指数包括了两个属性,一个每周运动次数和每次运动时间,我们需要做的就是把这两个字段清空,因为这个字段在user表中,同时我们删除他的时候不能把其他的属性删除,所以我们就不能直接使用delete方法,而是删除再添加再修改。问题与解决重