![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java后端
文章平均质量分 73
wzq_55552
认真做事,好好生活。(给个关注呗←_←)
展开
-
@Builder反序列化报找不到构造函数错误default constructor not found
@Builder反序列化报找不到构造函数错误default constructor not found原创 2023-05-16 19:45:56 · 1502 阅读 · 0 评论 -
Spring面试重点(二)——Spring循环依赖
Spring循环依赖面经原创 2023-02-10 08:00:00 · 394 阅读 · 1 评论 -
OpenResty(Nginx+Redis+Lua)实现缓存限流
OpenResty 是一个强大的 Web 应用服务器,Web 开发人员可以使用 Lua 脚本语言调动 Nginx 支持的各种 C 以及 Lua 模块,更主要的是在性能方面,OpenResty可以 快速构造出足以胜任 10K 以上并发连接响应的超高性能 Web 应用系统。原创 2023-01-11 09:09:45 · 2686 阅读 · 0 评论 -
Canal同步数据
Canal可以用来监控数据库数据的变化,从而获得新增数据,或者修改的数据。原创 2023-01-10 12:42:41 · 2050 阅读 · 0 评论 -
Kafka消息中间件
在大数据领域中Kafka目前是使用较多的框架。Kafka作为内部消息通知的框架,可以适应项目中大数据量的高吞吐、实时流计算等功能实现。原创 2023-01-09 09:18:51 · 391 阅读 · 0 评论 -
Rabbitmq消息队列详解(三)——SpringBoot整合
SpringBoot整合+应用场景。原创 2023-01-08 11:12:59 · 914 阅读 · 0 评论 -
Rabbitmq消息队列详解(二)——消息模式API
Rabbitmq消息模式API。原创 2023-01-07 18:08:28 · 736 阅读 · 0 评论 -
Rabbitmq消息队列详解(一)——基础介绍
消息队列,通过典型的生产者和消费者模型,生产者不断向消息队列中生产消息,消费者不断的从队列中获取消息。因为消息的生产和消费都是异步的,而且只关心消息的发送和接收,没有业务逻辑的浸入,轻松的实现系统间的解耦。原创 2023-01-05 21:23:00 · 336 阅读 · 0 评论 -
Zookeeper详解(三)——开源客户端curator
curator框架在zookeeper原生API接口上进行了包装,解决了很多zooKeeper客户端非常底层的细节开发。提供zooKeeper各种应用场景(比如:分布式锁服务、集群领导选举、共享计数器、缓存机制、分布式队列等)的抽象封装,实现了Fluent风格的API接口,是最好用,最流行的zookeeper的客户端。原创 2023-01-04 21:00:10 · 648 阅读 · 1 评论 -
Zookeeper详解(二)——API & 事件监听
znode是zooKeeper集合的核心组件,zookeeper API提供了一小组方法使用zookeeper集合来操纵znode的所有细节。原创 2023-01-03 21:07:08 · 902 阅读 · 3 评论 -
SpringBoot+Redis处理Session共享
SpringBoot + Redis 处理Session共享。原创 2023-01-01 21:37:20 · 587 阅读 · 0 评论 -
Elasticsearch搜索引擎(二)——SpringData Elasticsearch
Spring Data是一个用于简化数据库访问,并支持云服务的开源框架。其主要目标是使得对数据的访问变得方便快捷,并支持map-reduce框架和云计算数据服务。原创 2022-12-31 19:53:54 · 1421 阅读 · 1 评论 -
FastDfs分布式文件存储系统
FastDfs 是一个开源的高性能分布式文件系统(DFS)。 它的主要功能包括:文件存储,文件同步和文件访问,以及高容量和负载平衡。原创 2022-12-31 17:37:34 · 2392 阅读 · 4 评论 -
Redis最全详解(三)——SpringBoot整合2种方式
有两个 redis 模板:RedisTemplate 和 StringRedisTemplate。我们不使用 RedisTemplate,RedisTemplate 提供给我们操作对象,操作对象的时候,我们通常是以 json 格式存储,但在存储的时候,会使用 Redis 默认的内部序列化器;导致我们存进里面的是乱码之类的东西。当然了,我们可以**自己定义序列化**,但是比较麻烦,所以使用 StringRedisTemplate 模板。原创 2022-11-27 16:57:25 · 1206 阅读 · 1 评论 -
SpringCloud微服务(十二)——Seata分布式事务
Seata是一款开源的分布式事务解决方案,致力于在微服务架构下提供高性能和简单易用的分布式事务服务。原创 2022-11-23 18:21:55 · 629 阅读 · 1 评论 -
SpringCloud微服务(十一)——Sentinel服务熔断限流
Sentinel 是面向分布式服务架构的轻量级流量控制组件,主要以流量为切入点,从限流、流量整形、熔断降级、系统负载保护等多个维度来帮助您保障微服务的稳定性。原创 2022-11-23 18:14:44 · 745 阅读 · 0 评论 -
SpringCloud微服务(十)——Hystrix服务降级熔断限流
Hystrix是一个用于处理分布式系统延迟和容错的开源库原创 2022-11-23 18:03:05 · 680 阅读 · 0 评论 -
SpringCloud微服务(九)——Ribbon负载均衡
Ribbon本地负载均衡:客户端,进程式LB(多个客户端),在调用微服务接口时候,会在注册中心上获取注册信息服务列表之后缓存到JVM本地,从而在本地实现RPC远程服务调用技术。原创 2022-11-23 14:03:25 · 456 阅读 · 0 评论 -
SpringCloud微服务(八)——OpenFeign服务调用
Feign是一个声明式的Web Service客户端。它的出现使开发Web Service客户端变得很简单。原创 2022-11-23 14:01:13 · 3334 阅读 · 0 评论 -
SpringCloud微服务(七)——Bus服务消息总线
Spring Cloud Bus是消息总线,广播通知都可以集成,不止用于实现配置的动态刷新。原创 2022-11-23 13:56:44 · 2091 阅读 · 0 评论 -
SpringCloud微服务(六)——Gateway路由网关
Spring Cloud Gateway统一访问接口的路由管理方式原创 2022-11-23 13:52:03 · 2214 阅读 · 2 评论 -
SpringCloud微服务(五)——Config分布式配置中心
SpringCloud Config为微服务架构中的微服务提供集中化的外部配置支持,配置服务器为各个不同微服务应用的所有环境提供了一个中心化的外部配置。原创 2022-11-21 23:03:22 · 446 阅读 · 0 评论 -
SpringCloud微服务(四)——Nacos服务注册和配置中心
Nacos是注册中心+配置中心的组合,nacos支持CP和AP的切换切换如下:支持CP和AP的切换。原创 2022-11-21 22:58:51 · 1917 阅读 · 3 评论 -
SpringBoot-Statemachine实现状态机持久化
状态机之所以强大,是因为始终保证行为是一致的,这使得调试相对容易。这是因为在机器启动时,操作规则是不可更改的。其思想是,应用程序可能存在有限数量的状态,某些预定义的触发器可以将应用程序从一种状态转移到另一种状态。这样的触发器可以基于事件或计时器。在应用程序之外定义高级逻辑,然后依靠状态机来管理状态要容易得多。您可以通过发送事件、侦听更改或请求当前状态来与状态机交互。原创 2022-09-29 16:43:54 · 2098 阅读 · 1 评论 -
Mybatis——数据库json字段映射实体类
Mybatis——数据库json字段映射实体类原创 2022-07-07 10:47:13 · 7408 阅读 · 4 评论 -
Spring工具类StopWatch
Spring工具类StopWatch原创 2022-07-06 11:08:27 · 475 阅读 · 1 评论 -
SpringBoot优雅使用线程池
SpringBoot优雅使用线程池原创 2022-06-30 18:12:51 · 943 阅读 · 0 评论 -
文件流转MultipartFile
Java后端,文件流转MultipartFile原创 2022-06-29 15:57:45 · 7093 阅读 · 0 评论 -
Java设计模式(一)——七大原则
设计模式七大原则,Java语言,实现方式案例原创 2022-06-11 22:21:48 · 106 阅读 · 0 评论 -
Java设计模式(四)——代理模式
代理模式,Java语言,实现方式案例原创 2022-06-11 22:13:44 · 100 阅读 · 0 评论 -
Java设计模式(三)——工厂模式
工厂模式,Java语言,实现方式案例原创 2022-06-11 21:45:43 · 111 阅读 · 0 评论 -
Java设计模式(二)——单例模式
单例模式,Java语言,实现方式案例原创 2022-06-11 21:36:21 · 118 阅读 · 0 评论 -
Java设计模式(五)——策略模式
策略模式,Java语言,实现方式案例原创 2022-06-08 15:38:47 · 619 阅读 · 0 评论 -
Java判断字符串是否为正整数且不能以0开头
最近需求,需要判断字符串是否为正整数,但是查阅网上资料和各种现有工具类方法,实现都是遍历字符串,判断字符是不是0~9,都忽略了以0开头的情况,比如011也是返回true。以下是改正后的判断方法: public static void main(String[] args) { System.out.println( isNumeric("00111")); System.out.println( isNumeric("11")); System.out.println( isNumeri原创 2022-02-23 15:15:10 · 2039 阅读 · 0 评论 -
Spring实现Bean延迟加载
Spring实现Bean延迟加载使用spring,则所有bean统一交给spring管理,spring负责初始化、销毁等整个声明周期。所有bean的定义通过配置文件或javaConfig方式。启动时统一初始化并加载至spring的applicationContext中,通过其getBean方法获取。但有时为了加快系统启动速度,并不需启动时立刻初始化并加载,可以在使用其时才初始化并加载,可以使用@Lazy实现懒加载有些时候,我们不需要懒加载,但是又希望一些Bean在项目启动后延迟几分钟再初始化加载,原创 2022-02-16 16:11:34 · 2726 阅读 · 0 评论 -
hutool工具ExcelWriter设置单个单元格样式
官网自定义样式:ExcelWriter writer = ...;// 定义单元格背景色StyleSet style = writer.getStyleSet();// 第二个参数表示是否也设置头部单元格背景style.setBackgroundColor(IndexedColors.RED, false);//设置内容字体Font font = writer.createFont();font.setBold(true);font.setColor(Font.COLOR_RED)原创 2022-01-17 16:03:44 · 9622 阅读 · 0 评论 -
使用Mybatis/TkMybatis/Mybatis-Plus框架报错:无效的列类型: 1111
使用Mybatis/TkMybatis/Mybatis-Plus框架报错:无效的列类型: 1111原创 2022-01-06 09:34:25 · 4183 阅读 · 2 评论 -
SpringBoot项目幂等性问题解决方案实现
大体思路:前端请求头存放幂等性ID,自定义注解ApiIdempotent,在需要幂等性controller访问前拦截获取幂等性ID作为Redis的Key,值为N(正在执行),设置一定的过期时间。controller执行后拦截设置Redis中key幂等性ID的值为Y(已执行完)代码:1. 自定义幂等性注解,在需要幂等性校验的controller方法上添加该注解import java.lang.annotation.ElementType;import java.lang.annot原创 2021-12-16 17:27:18 · 1357 阅读 · 0 评论 -
SpringBoot分析使用RequestBodyAdvice&ResponseBodyAdvice接口
RequestBodyAdvice作用:controller入参使用了@RequestBody注解获取json数据,RequestBodyAdvice才能生效。很明显,原理是aop,在读取请求body数据前后进行额外的操作。看看RequestBodyAdvice接口源码:public interface RequestBodyAdvice { /** * 返回boolean类型,当该方法返回条件成立时才能触发执行其他方法 * Invoked first to determine i原创 2021-12-15 17:29:11 · 2487 阅读 · 0 评论 -
Mybatis支持实体类LocalDateTime格式化转化解析
Mybatis生成的映射实体类对应的日期类型是Date类型,我们应该改成LocatDateTime等Java8新出的安全日期类型,但是这样实体类在mybatis执行映射解析上跟数据库的类型是匹配不上的,会报类型格式不匹配等问题。解决方法:统计设置日期类型转换,执行查询获取的日期需要映射为LocatDateTime类型,执行新增更新等操作时将LocatDateTime日期对象转成与数据库相匹配的类型。代码如下:import com..common.constant.DateConstant;imp原创 2021-10-29 17:25:36 · 5646 阅读 · 0 评论