- 博客(65)
- 收藏
- 关注
原创 如何将请求参数及限制精确提示给用户,提示支持中英文切换
这篇博客主要是依赖前三篇博客进行展开的处理,如果没有看前三篇建议先看完三篇后再浏览这篇。我们都知道对请求参数的校验可以使用spring-boot-starter-validation依赖用于请求参数的校验。在ProjectDTO类成员中使用validation校验注解都要手动写message提示信息,而且这些提示信息样式非常相似,那么如果有很多这样的请求类处理就需要在成员注解中手动写message提示信息,那么这样是相当麻烦的,首先我很懒,我是不会这样去做的,我会这样去做,让它自动帮忙处理,而且很规范。
2023-12-19 15:15:27
572
原创 系统接口未找到报404异常统一返回处理
仍然会出现一些情况。针对未找到接口爆出404异常,返回结构体如果没有处理的话会变成下面这样,不会走全局异常处理,这样的话就没有完全做到全局异常统一处理。
2023-12-15 11:43:44
920
原创 异常处理返回结构体,做到全局统一
自定义异常作用:方便开发者使用,针对那些请求必要参数及数据库返回数据的处理。代码实践:需自定义一个异常类,然后才可被使用存在成员属性ErrorCode类型的errorCode,并定义两个构造函数,第一个是无参构造并为errorCode赋予一个默认值,第二个是ErrorCode的有参构造,直接为它赋值且可进行占位处理。@Getter/*** 错误码*//*** 空构造方法,避免无参初始化错误*///使用临时对象是避免占位符无法使用。
2023-12-15 11:02:30
550
原创 自研究的一套返回结构体
int类型的错误码codeString类型的提示用语messageObject类型的数据对象data(Object类型可用泛型表示)@Data@ApiModel(value = "返回结构体")@ApiModelProperty(value = "返回码")@ApiModelProperty(value = "提示消息")@ApiModelProperty(value = "数据结构体")
2023-12-13 07:56:40
448
原创 ThreadLocal的理解和使用
内存泄漏:上述threadLocal对象,若没有手动删除当前线程的用户信息,每次请求执行接口时都会创建一个不同的线程,都会将用户信息放到threadLocal对象中,而threadLocal的生命周期相当于应用系统的生命周期,GC无法回收,这样就会导致执行接口次数越多,内存泄漏得越多。主要原因是使用线程池,线程池是拥有核心线程数和最大线程数的,核心线程会一直存在那里不会销毁,核心线程外的最大线程是有一定的存活时间,那么就有可能当前接口的线程就存活在线程池中,从而得到错误的用户信息。
2023-12-03 13:55:00
431
原创 JAVA泛型概念的理解
泛型是JAVA语言中一种增强类型安全性的机制,它允许程序员在类,接口和方法中使用类型参数,以便在编译时进行类型检查,并在运行时生成正确的代码。泛型的主要目的是提高代码的可重用性和可读性,同时减少类型转换的错误。
2023-12-03 10:48:28
609
原创 MQTT协议理解并实践
MQTT是一个轻量的发布订阅模式消息传输协议,专门针对低带宽和不稳定网络环境的物联网应用设计MQTT协议根据主题来分发消息进行通信,支持通配符匹配,可以低开销的使用数百万Topic进行一对一,一对多双向通信。
2023-12-03 09:39:45
565
原创 Springboot项目启动成功后可通过五种方式继续执行
如果监听的是 ApplicationStartedEvent 事件,则 ApplicationListener 一定会在 CommandLineRunner 和 ApplicationRunner 之前执行;如果监听的是 ApplicationReadyEvent 事件,则 ApplicationListener 一定会在 CommandLineRunner 和 ApplicationRunner 之后执行;
2023-12-01 21:11:59
650
原创 Nacos服务间的通信方式并使用
注:实现该通信必须先开启feign,使用@EnableFeignClients注解开启,然后就可通过调用Service方法层一样调用。需先加载RestTemplate到spring容器中。
2023-11-30 11:45:08
573
原创 Redis应用的16个场景
常见的16种应用场景:1、缓存String类型例如:热点数据缓存(例如报表、明星出轨),对象缓存、全页缓存、可以提升热点数据的访问数据。
2023-11-28 11:34:55
923
原创 docker容器出现Cannot allocate memory问题解决方法
linux系统出现Cannot allocate memory无法分配内存错误,需要加大linux初始配置,尤其是使用docker容器出现频繁
2023-03-29 20:50:55
3415
原创 部署kubernetes的管理页面(dashboard)
k8s安装后,若需要查看各个部件的状态只能到服务器通过命令查看非常不方便,这时就需要一个服务用来管理操作k8s。
2022-11-28 14:31:12
314
原创 k8s详细安装过程
k8s详细安装过程,从主机网络到各环境到安装docker,然后安装kubeadm,kubelet和kubectl,master初始化,slave加入,容器网络CNI,最后实例化部署nginx容器
2022-11-28 14:20:03
2333
1
原创 Mycat分库分表分片方式
Mycat进行单库分表,多库分表进行分片可能会使用到的分片方式,文中提供有13种分片方式,有取模分片,范围分片,范围取模分片等
2022-11-10 15:55:39
820
原创 Mycat使用全局表及ER关系表
Mycat使用全局表,用于系统字典表,系统配置表等一些固定记录的表,ER关系表可用于表连接,此插入的数据id序列使用了数据库方式自动递增
2022-11-10 15:50:31
260
原创 Mycat创建及使用数据库方式序列
单表可以使用自动递增方式,但是在单库分表或者多库分表情况下使用自动递增就需要借用第三方存储当前的值,此方法就是使用数据库方式存储使用
2022-11-10 15:44:43
330
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人