自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(143)
  • 收藏
  • 关注

原创 linux安装nginx

https://cloud.tencent.com/developer/article/1654844

2025-03-14 16:37:02 108

原创 轻量级日志管理系统promtail(或logback)+loki+grafana部署流程

获取通用配置wget https://raw.githubusercontent.com/grafana/loki/main/clients/cmd/promtail/promtail-local-config.yaml。获取官方通用配置wget https://raw.githubusercontent.com/grafana/loki/master/cmd/loki/loki-local-config.yaml。192.168.244.128:3000 默认账号密码admin/admin。

2025-03-03 18:00:45 508

原创 编译时报错ClassNotFound和NoClassDefFound

2025-02-27 17:50:12 110

原创 手动分页sql_calc_found_rows用法代替多查询一次total_rows

【代码】手动分页sql_calc_found_rows用法代替多查询一次total_rows。

2025-02-10 17:37:41 82

原创 springboot项目java11简单读取classpath下文件内容

create_table_template.sql需要放在resource文件夹下。

2025-02-10 11:52:51 67

原创 在idea中配置多个版本的jdk

问题:有时候有好几个项目,不同的项目用的是不同版本的jdk。

2025-01-08 10:57:06 656

原创 maven镜像仓库

【代码】maven镜像仓库。

2025-01-08 10:37:58 219

原创 jackson序列化和反序列化不同类型的方式及JsonUtil

2025-01-07 14:00:47 127

原创 加密相关工具类、方法、混合加密案例

一个混合加密的方案,生成RSA私钥和公钥,AES密钥。然后将AES密钥用RSA公钥加密。最后在服务器特定位置存储被加密后的AES密钥和RSA私钥。在应用程序里面,读取被加密后的AES密钥和RSA私钥,并用RSA私钥将被加密后的AES密钥解密成初始AES密钥。那么在应用中就能用AES密钥进行加解密了。将文件存储位置配置在配置文件中。

2024-12-18 13:14:10 157

原创 非spring组件依赖spring bean的方式

将MyDeserializer依赖的bean定义为 static,并写一个static方法手动set这个bean,set的时机在一个配置类的@PostConstruct中。有可能在static类型的依赖还没有被注入到MyDeserializer里,MyDeserializer就会被调用,这时候有可能会产生空指针,怎么办呢?也可以不用配置类,直接在KeyManagementService的初始化块(也就是@PostConstruct方法)中加上。依赖还没有被注入,也就是说。在初始化的时候就会用到。

2024-12-18 12:57:28 247

原创 applicaiton.yml常用配置

【代码】applicaiton.yml常用配置。

2024-12-13 15:18:47 146

原创 mapper.xml传入参数为Map的正确做法

使用批量更新需要加入allowMultiQueries=true。

2024-12-13 15:15:31 570

原创 linux系统上,打包部署代码的操作

以传统的方式打包部署代码

2024-12-10 10:42:48 103

原创 Redisson semaphore使用实践

当这个semaphore剩余许可为0的时候,返回true。当expire设置的时间过期时,才返回false。

2024-11-22 15:58:57 147

原创 实现线上修改配置实时更新的方案

问了几个前辈,有以下的技术方案:

2024-11-14 13:00:05 240

原创 使用自定义注解+jackson序列化优雅实现数据脱敏

需求效果:对手机号码和身份证号码进行数据脱敏,前4位数用*代替......自定义jackson序列化器,需要集成JsonSerializer,重写serialize方法实现脱敏逻辑在需要被脱敏的字段上使用@JsonSerialize注解,并使用自定义的序列化器具体代码和测试结果上一个版本的序列化器的序列化方式很固定,比如说有点用4个x代替,有的全部都是x比如密码修改Desensitization注解的属性修改前:int len();

2024-10-14 00:01:47 608 1

原创 24秋面试笔记

1.1.2 集合1.1.3 Java8新特性1.2 熟悉常用的数据结构(链表、栈、队列、二叉树等),熟练使用排序、动态规划、DPS等算法。1.2.1 数据结构1.2.2算法1.3 理解设计模式如工厂、代理、策略、模板、建造者等,并善用设计原则构建可复用的代码。1.3.1 代理模式参考:一文搞懂代理模式静态代理:中介租房案例动态代理:参考Java设计模式之创建型:工厂模式详解(简单工厂+工厂方法+抽象工厂)简单工厂模式工厂方法模式抽象工厂模式参考JAVA设计模式之策略模式详解参考模板

2024-10-11 17:21:17 852

原创 springboot整合seata

这一步必须有,否则会报错找不到service.vgroupMapping.xxxxxxxx。

2024-09-30 23:21:55 1004

原创 springboot整合MybatisPlus+MySQL

在sd-service中引入依赖,product-service和order-service自动会继承。先改变一下项目结构,给product-service和order-service加一个父模块。docker部署MySQL:参考。修改controller。

2024-09-29 17:45:37 1247

原创 springboot整合sentinel和对feign熔断降级

对服务进行降级(实际项目中比如:"当前请求繁忙,请稍后访问"或者推荐别的页面)。这个feign接口为例,当这个接口对应的http请求被限流阻断时,启用一个新的。,只有当我们第一次访问过后,相应的服务和请求才会在左边(和簇点链路)中出现。,发现20个请求里有10个请求访问失败,浏览器报500错误。使用jmeter进行压测,QPS为20,访问接口为。sentinel控制台显示有10个请求被拒绝。限流为QPS=10,超过10则迅速失败。(1)当未配置熔断降级功能时。此外,idea控制台报异常。

2024-09-26 04:23:57 705

原创 将上一篇的feign接口抽取到公共api模块(包含feign接口示例)

公共模块抽取、feign接口使用

2024-09-26 02:51:47 1074

原创 springboot整合openfeign

引入IProductClient所在模块,不用引openfeign,因为引入这个依赖,那么openfeign已经在classpath下了。微服务端口号为8081,并将order-service注册到nacos上,这个步骤省略;,用来让别的服务可以调用ProductController的对应方法。依赖(但是我这里,没有排除ribbon依赖也可以)对应的controller方法为。发现feign远程调用成功了。否则会报错,bean找不到。时可能会出现以下错误。

2024-09-25 03:37:23 1146

原创 springboot整合nacos

docker安装nacos参考。

2024-09-25 03:02:04 318

原创 spring-boot、spring-cloud、spring-cloud-alibaba的常用依赖的依赖声明及pom文件

父工程pom文件,主要定义了依赖的版本号。子工程按需引入,不再需要版本号。

2024-09-25 02:47:27 539

原创 docker安装各个组件的命令

下载镜像https://cloud.tencent.com/developer/article/2434428。(2)修改conf目录下的application.properties,替换为自己的数据源。(3)建立nacos_config,数据库运行sql脚本。nacos依赖于mysql,因此需要先有mysql环境。(4)删除之前的容器,运行新的容器,并挂载数据卷。(5)查看容器运行日志,是否成功。默认账户密码都是sentinel。默认账号密码都是nacos。(1) 获取配置文件。

2024-09-24 16:06:11 361

原创 springsecurity+jwt实现前后端分离认证授权

Spring Security 中文文档Spring Security是一个Java框架,用于保护应用程序的安全性。它提供了一套全面的安全解决方案,包括身份验证、授权、防止攻击等功能。Spring Security基于过滤器链的概念,可以轻松地集成到任何基于Spring的应用程序中。它支持多种身份验证选项和授权策略,开发人员可以根据需要选择适合的方式。此外,Spring Security还提供了一些附加功能,如集成第三方身份验证提供商和单点登录,以及会话管理和密码编码等。

2024-09-20 03:01:33 968

原创 Caffenie配合Redis做两级缓存,Redis发布订阅实现缓存一致更新

在项目中。一级缓存用Caffeine,二级缓存用Redis,查询数据时首先查本地的Caffeine缓存,没有命中再通过网络去访问Redis缓存,还是没有命中再查数据库。具体流程如下。

2024-09-10 03:09:53 756

原创 日志logback.xml

【代码】日志logback.xml。

2024-09-10 02:02:00 384

原创 接口幂等的方案

接口幂等的方案和代码落地

2024-09-09 08:58:44 446

原创 SpringBoot中利用EasyExcel+aop实现一个通用Excel导出功能

主要功能:可以根据前端传递的参数,导出指定列、指定行。

2024-09-08 04:55:50 566

原创 Synchronized、Reetrantlock

任意对象都可以作为同步锁。同步方法的锁:静态方法(类名.class)、非静态方法(this)同步代码块:自己指定,很多时候也是指定为this或类名.class。

2024-09-05 17:12:23 977

原创 CyclicBarrier屏障锁

使用场景。

2024-09-05 01:57:29 167

原创 CountDownLatch使用场景和方法

倒计时锁:主要的使用场景就是一个线程等待多个线程执行完毕后再执行。

2024-09-05 01:56:11 657

原创 CompleteableFuture异步编程框架

有3个被调用的service(MemberService,OrderService,ProductService),每个service中有个search方法,分别耗时5,4,3秒钟。有一个查询需求,需要分别调用这3个service的search方法,获取对应会员、订单、产品列表。消费上一次调用的结果,返回另一个结果。示例:等待memberService和orderService都结束后,再执行后面的异步操作。不管上一次调用的结果是什么,没有参数,没有返回值。等待所有并行任务执行后,再执行后面的操作。

2024-09-05 01:22:41 1006

原创 idea新建父工程和添加导入新模块的步骤

如何在idea中新建一个父工程,然后在父工程下新建多个微服务模块或者java模块?

2024-09-04 04:26:47 792

原创 MQ专题:消息积压相关问题和解决思路

一、如何发现消息出现了堆积二、常见的原因及解决方案三、消息出现了大量堆积,如何解决四、建议

2024-09-03 05:03:29 285

原创 幂等的通用实现方案

幂等指多次操作产生的影响只会跟一次执行的结果相同,通俗的说:某个行为重复的执行,最终获取的结果是相同的,不会因为重复执行对系统造成变化。数据库操作的幂等性,4种种方案都可以,第3种方案算是一种通用的方案,可以在项目框架搭建初期就提供此方案,然后在组内推广,让所有人都知晓,可避免很多幂等性问题。方案4大家也要熟悉这个处理过程。

2024-09-03 04:53:58 907

原创 MQ专题:顺序消息落地方案

投递消息的顺序和消费消息的顺序一致。比如生产者按顺序投递了1/2/3/4/5 这 5 条消息,那么消费的时候也必须按照1到5的顺序消费这些消息。

2024-09-03 02:54:08 993

原创 MQ专题:消费幂等性

消费者从mq中拉取消息后,mq需要将消息从mq中删除,这个删除有2种方式方式1:MQ自动删除消费者从mq中拉取消息后,mq立即就把消息删掉了,此时消费者还未消费。这种可能会有问题,比如消费者拿到消息后,消费失败了,但是此时消息已经被mq删除了,结果会导致消息未被成功消费。方式2:消费者通知MQ删除(也叫手动ack)消费者从mq拉取消息后,做业务处理,业务处理完成之后,通知mq删除消息,这种就叫做消费者手动ack。

2024-09-02 16:19:33 920

原创 git命令

【代码】git命令。

2024-09-02 15:14:41 479

Skywalking仪表盘使用

Skywalking仪表盘使用

2024-06-07

双写一致性设计方案-TCP模式/MQ模式

MySQL主从同步机制 Canal实现数据同步原理 数据双写一致性设计方案-TCP模式/MQ模式

2024-05-17

freemaker,minio

freemaker,minio

2024-05-13

消息中间件kafka详细教程md文档

Kafka 是一个分布式流媒体平台,类似于消息队列或企业消息传递系统。kafka官网:http://kafka.apache.org/

2024-05-13

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除