首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

公司这套架构统一处理try...catch这么香,求求你不要再满屏写了,再发现扣绩效!

代码块,不仅有大量的冗余代码,而且还影响代码的可读性。这样就需要定义个全局统一异常处理器,以便业务层再也不必处理异常。...BusinessException extends RuntimeException {  private static final long serialVersionUID = 1L;  /**   * 错误状态码...,拒绝硬编码 public enum ErrorEnum {  // 数据操作错误定义  SUCCESS(200, "成功"),  NO_PERMISSION(403,"你没得权限"),  NO_AUTH...,  INTERNAL_SERVER_ERROR(500, "服务器异常请联系管理员"),  ;  /** 错误码 */  private Integer errorCode;  /** 错误信息 ...( Exception e) {       log.error(e.getMessage(), e);         return AjaxResult.otherError(ErrorEnum.INTERNAL_SERVER_ERROR

49310

Spring Boot集成Security使用数据库用户角色权限用户名问题问题描述原因分析解决方案

问题描述 代码 package com.springboot.in.action.dao import java.util.List import com.springboot.in.action.entity.User...: could not extract ResultSet at org.hibernate.exception.internal.SQLExceptionTypeDelegate.convert...org.hibernate.internal.SessionImpl.listCustomQuery(SessionImpl.java:1967) at org.hibernate.internal.AbstractSessionImpl.list...at org.hibernate.jpa.internal.QueryImpl.list(QueryImpl.java:606) at org.hibernate.jpa.internal.QueryImpl.getSingleResult...这在敲代码的时候,手速一旦稍有不慎,就会导致前后顺序颠倒,而导致输入错误。这个虽然说是“低级错误”,但是错误搞起来,确实有时候很难想到这个你从来不会认为出错的地方。

58960
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    13.12 Spring Boot集成Security中遇到的问题13.12 Spring Boot集成Security中遇到的问题问题1:Spring Boot集成Security使用数据库用户角色

    13.12 Spring Boot集成Security中遇到的问题 问题1:Spring Boot集成Security使用数据库用户角色权限用户名问题 问题描述 代码 package com.springboot.in.action.dao...: could not extract ResultSet at org.hibernate.exception.internal.SQLExceptionTypeDelegate.convert...org.hibernate.internal.SessionImpl.listCustomQuery(SessionImpl.java:1967) at org.hibernate.internal.AbstractSessionImpl.list...at org.hibernate.jpa.internal.QueryImpl.list(QueryImpl.java:606) at org.hibernate.jpa.internal.QueryImpl.getSingleResult...这在敲代码的时候,手速一旦稍有不慎,就会导致前后顺序颠倒,而导致输入错误。这个虽然说是“低级错误”,但是错误搞起来,确实有时候很难想到这个你从来不会认为出错的地方。

    1.3K20

    最新 Restful API 风格 ResponseEntity 用法大全

    API的HttpResponse Code=200,那么完全可以不使用ResponseEntity作为返回数据类型,只需要去返回Response Body,通过Body中开发者自定义的Code给API设置状态...当浏览器接收并显示网页前,此网页所在的服务器会返回一个包含HTTP状态码的信息头(server header)用以响应浏览器的请求。 HTTP状态码的英文HTTP Status Code。...下面是常见的HTTP状态码: 200 - 请求成功 301 - 资源(网页等)被永久转移到其它URL 404 - 请求的资源(网页等)不存在 500 - 内部服务器错误...4** 客户端错误,请求包含语法错误或无法完成请求 5** 服务器错误,服务器在处理请求的过程中发生了错误 HTTP状态码列表: HTTP状态码列表 状态状态码英文名称 中文描述 100...防止客户端的连续请求,服务器可能会关闭连接。

    42110

    优雅的参数校验与全局异常-代码规范的天生落地

    作为前置知识,这里首先讲解统一返回体 # 统一返回体 绝大多数公司都会定义自己的统一返回体,以一个简单的返回体例,包含错误代码errCode,简要错误errMessage,详细信息detailMessage...总结起来就是,部分网友认为Http网络层协议,表达网络含义,不应该表达业务。另外有人表示这是历史原因,以前返回非200状态码会被运营商拦截,当然现在没有这个情况了。...以下面这个真实案例开始 在公司内的前端涉及到对接多个系统,当所有接口无论错误或正确都返回Http Code=200时,前端通过errCode区分这次结果到底是正确还是错误,可能写出的代码 if(errCode...总结起来如下场景 日志级别WARN:对于前置校验类异常,正常来说状态400,代表前端参数错误,400状态下前端不能直接拿到返回体,需要前端异常捕获配合才能打印msg,该类型异常已知,不需要人工处理...failResponse = Response.fail(errCode, message); return new ResponseEntity(failResponse, HttpStatus.INTERNAL_SERVER_ERROR

    2.3K41

    支持JDK19虚拟线程的web框架,上篇:体验

    ,确保读者们既有成就感,又能学点小技能,在虚拟线程最火爆的时候抢先一步尝鲜,窥探未来技术的一角 整个系列一共三篇文章,分别是《极速体验》、《细说开发》、《深入了解》,本篇是系列的开篇,主要内容是:不写代码....Final,使用的JDK是19 springboot版本2.7.4,用到的JDK是11 压测工具k6docker版,版本号v0.40.0 省吃俭用攒了这么多电脑来搞事情,主要是想得到的压测结果尽量客观独立...WebApplicationContext: initialization completed in 1364 ms 2022-10-16 13:01:02.701 INFO 1 --- [ main] o.hibernate.jpa.internal.util.LogHelper...main] o.h.e.t.j.p.i.JtaPlatformInitiator : HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform...应用时,也没有在吞吐量方面带来提升,这一切都不能立即下定论,也许是欣宸的用法有严重问题…如果真有问题,聪明的您,在下一篇文章《编码实战》中一定会发现,如果真有问题,不要可怜我,怼我,让我忏悔… 接下来的文章

    1.2K30

    支持JDK19虚拟线程的web框架,之一:体验

    确保读者们既有成就感,又能学点小技能,在虚拟线程最火爆的时候抢先一步尝鲜,窥探未来技术的一角 整个系列一共四篇文章,分别是《极速体验》、《细说开发》、《深入了解》(两篇),本篇是系列的开篇,主要内容是:不写代码....Final,使用的JDK是19 springboot版本2.7.4,用到的JDK是11 压测工具k6docker版,版本号v0.40.0 省吃俭用攒了这么多电脑来搞事情,主要是想得到的压测结果尽量客观独立...WebApplicationContext: initialization completed in 1364 ms 2022-10-16 13:01:02.701 INFO 1 --- [ main] o.hibernate.jpa.internal.util.LogHelper...main] o.h.e.t.j.p.i.JtaPlatformInitiator : HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform...应用时,也没有在吞吐量方面带来提升,这一切都不能立即下定论,也许是欣宸的用法有严重问题…如果真有问题,聪明的您,在下一篇文章《编码实战》中一定会发现,如果真有问题,不要可怜我,怼我,让我忏悔… 接下来的文章

    58550

    SpringBoot 系列 web 篇之自定义返回 Http Code 的 n 种姿势

    SpringBoot 系列 web 篇之自定义返回 Http Code 的 n 种姿势 虽然 http 的提供了一整套完整、定义明确的状态码,实际的业务支持中,后端并不总会遵守这套规则,更多的是在返回结果中...,加一个 code 字段来自定义业务状态,即便是后端 5xx 了,返回给前端的 http code 依然是 200 那么如果我想遵守 http 的规范,不同的 case 返回不同的 http code...,"path":"/code/ano"}% 当我们发起请求时,返回的状态 400,返回的数据 springboot 默认的错误信息格式 虽然上面这种使用姿势可以设置 http code,但是这种使用姿势有什么意义呢...ResponseStatus(HttpStatus.INTERNAL_SERVER_ERROR) public String handleArrayIndexOutBounds(HttpServletRequest...装饰异常类 另外一种使用姿势就是直接装饰在异常类上,然后当你的业务代码中,抛出特定的异常类,返回的 httpcode 就会设置注解中的值 /** * 异常类 + 注解方式,只支持标准http状态

    4.8K20

    SpringBoot服务端表单数据校验

    1、首先说明一下,这里使用的是Springboot2.2.6.RELEASE版本,由于Springboot迭代很快,所以要注意版本问题。   ...SpringBoot对表单做数据校验,SpringBoot对表单数据校验的技术特点,SpringBoot中使用了Hibernate-validate校验框架(SpringBoot的Web启动器中已经包含了...(ValidatorImpl.java:447) ~[hibernate-validator-6.0.18.Final.jar:6.0.18.Final] 14 at org.hibernate.validator.internal.engine.ValidatorImpl.validateInContext...(ValidatorImpl.java:397) ~[hibernate-validator-6.0.18.Final.jar:6.0.18.Final] 15 at org.hibernate.validator.internal.engine.ValidatorImpl.validate...使用hibernate validator其他校验规则。 1)、@NotBlank: 判断字符串是否null或者是空串(去掉首尾空格)。

    80110
    领券