自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 docker部署springboot(eureka server)项目

打开idea右侧的 Maven 工具窗口(View → Tool Windows → Maven)双击 package 目标。

2025-04-18 23:08:49 288

原创 ubuntu离线安装docker

可以浏览器访问Docker下载目录进行下载(各个目录对应版本关系):也可以通过命令行方式(以下是在 Ubuntu 20.04 LTS(Focal Fossa) 上离线安装 Docker 的详细步骤:):下载 Docker CE 的核心包(适配 Ubuntu 20.04)下载时遇到“无法建立 SSL 连接”:1.检查系统时间和时区2.更新 CA 证书,证书链过期或缺失会导致 SSL 验证失败下载所有依赖包打包所有文件最终文件如下:如果文件名包含特殊字符%3a:Docker 24.

2025-04-13 16:30:10 450

原创 docker部署redis

【代码】docker部署redis。

2025-04-07 21:11:48 213

原创 docker部署rabbitmq

management 标签表示包含管理插件,可以通过 Web 界面管理 RabbitMQ。

2025-04-06 18:47:11 412

原创 docker部署minio

MinIO 的官方 Docker 镜像托管在(而非 Docker Hub),以下是其版本分类及常见标签说明:环境对应信息:amd: 32位X86amd64: 64位X86arm: 32位ARMarm64: 64位ARM。

2025-04-05 17:24:31 395

原创 docker部署kkfileview

修改 /opt/kkfileview/config/application.properties 后重启容器生效。

2025-04-04 22:50:12 250

原创 Docker部署MySQL

ALTER USER ‘root’@‘%’ IDENTIFIED WITH mysql_native_password BY ‘密码’;#更新用户加密方式,mysql8默认的加密方式为caching_sha2_password 与mysql5的加密方式mysql_native_password 不同。–privileged=true:容器内的root拥有真正root权限,否则容器内root只是外部普通用户权限。-v:主机和容器的目录映射关系,":"前为主机目录,之后为容器目录。创建容器,并后台启动。

2025-04-04 22:18:01 210

原创 【服务日志链路追踪】

在微服务架构中,日志链路追踪(Logback + Distributed Tracing) 是一个关键需求,主要用于跟踪请求在不同服务间的调用链路,便于排查问题。支持 HTTP(Feign/RestTemplate)、MQ(Kafka/RabbitMQ)、gRPC 等自动传播。Logback 提供的线程本地存储,用于存放日志变量(如 traceId)。日志输出时自动携带 MDC 中的字段(需配置 %X{traceId})。(2) Logback 配置(自动携带 traceId)

2025-04-03 20:13:07 759

原创 amazon s3

【代码】amazon s3。

2024-12-13 11:39:56 176

原创 springcloud Hystrix

Hystrix的内部处理逻辑1构建Hystrix的Command对象, 调用执行方法.2Hystrix检查当前服务的熔断器开关是否开启, 若开启, 则执行降级服务getFallback方法.3若熔断器开关关闭, 则Hystrix检查当前服务的线程池是否能接收新的请求, 若超过线程池已满, 则执行降级服务getFallback方法.4若线程池接受请求, 则Hystrix开始执行服务调用具体逻辑run方法.5若服务执行失败, 则执行降级服务getFallback方法, 并将执行结果上报Metrics

2021-02-26 16:58:37 183

原创 事务 (数据库、Spring)

事务的四大特性(ACID)原子性(Atomicity)原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,这和前面两篇博客介绍事务的功能是一样的概念,因此事务的操作如果成功就必须要完全应用到数据库,如果操作失败则不能对数据库有任何影响。一致性(Consistency)一致性是指事务必须使数据库从一个一致性状态变换到另一个一致性状态,也就是说一个事务执行之前和执行之后都必须处于一致性状态。拿转账来说,假设用户A和用户B两者的钱加起来一共是5000,那么不管A和B之间如何转账,转几次账,事务结

2021-02-26 15:03:33 198

原创 SpringBoot 启动类 @SpringBootApplication 注解

@SpringBootApplication : 是Sprnig Boot项目的核心注解,目的是开启自动配置@Target({ElementType.TYPE})@Retention(RetentionPolicy.RUNTIME)@Documented@Inherited@SpringBootConfiguration@EnableAutoConfiguration@ComponentScan( excludeFilters = {@Filter( type = Filte

2021-02-26 14:45:51 352

原创 springboot+druid

Druid是一个数据库连接池,是目前最好的数据库连接池,在功能、性能、扩展性方面,都超过其他数据库连接池,包括DBCP、C3P0、BoneCP、Proxool、JBoss DataSource。引入依赖包<dependency> <groupId>com.alibaba</groupId> <artifact...

2020-01-16 14:04:46 402

原创 线程的5种状态

线程的状态图新建(NEW):新创建了一个线程对象1.实现Runnable接口和继承Thread可以得到一个线程类,new一个实例出来,线程就进入了初始状态可运行(RUNNABLE):线程对象创建后,其他线程(比如main线程)调用了该对象的start()方法。该状态的线程位于可运行线程池中,等待被线程调度选中,获取cpu 的使用权1.可运行状态只是说你资格运行,调度程序没有挑选到你,...

2020-01-14 14:30:25 320

原创 springboot日志配置

引入依赖<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <scope>provided</scope></depend...

2020-01-14 13:33:45 1616

原创 synchronized

使用方法修饰一个方法,被修饰的方法称为同步方法,其作用范围是整个方法修饰一个代码块,被修饰的代码块称为同步代码块,作用范围是大括号{}括起来的代码修改一个静态方法,作用范围是整个静态方法修改一个类,作用范围是synchronized后面括号括起来的部分修饰代码块class SynchronizedTest implements Runnable{ private static ...

2020-01-14 11:10:10 159

原创 java线程基础

进程进程是程序的一次执行过程,是系统运行程序的基本单位,因此进程是动态的。系统运行一个程序即是一个进程从创建,运行到消亡的过程。线程线程与进程相似,但线程是一个比进程更小的执行单位。一个进程在其执行的过程中可以产生多个线程。与进程不同的是同类的多个线程共享同一块内存空间和一组系统资源,所以系统在产生一个线程,或是在各个线程之间作切换工作时,负担要比进程小得多,也正因为如此,线程也被称为轻量级...

2020-01-14 10:14:26 151

原创 ThreadPoolExecutor

ThreadPoolExecutorpackage com.zhw.learning.thread;import java.util.concurrent.*;/** * @author zhw */public class ThreadPoolExecutorTest { public static void main(String[] args) { ...

2020-01-08 15:07:32 159

原创 定时线程池(newScheduledThreadPool)

定时线程池(newScheduledThreadPool)package com.zhw.learning.thread;import java.text.SimpleDateFormat;import java.util.Date;import java.util.concurrent.Executors;import java.util.concurrent.ScheduledEx...

2020-01-08 14:02:24 7354

原创 单例线程池(newSingleThreadExecutor)

单例线程池(newSingleThreadExecutor)package com.zhw.learning.thread;import java.text.SimpleDateFormat;import java.util.Date;import java.util.concurrent.ExecutorService;import java.util.concurrent.Exec...

2020-01-08 13:48:49 2923

原创 固定数量线程池(newFixedThreadPool)

固定数量线程池(newFixedThreadPool)package com.zhw.learning.thread;import java.text.SimpleDateFormat;import java.util.Date;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executo...

2020-01-08 13:41:51 3982

原创 缓存线程池(newCachedThreadPool)

缓存线程池(newCachedThreadPool)package com.zhw.learning.thread;import java.text.SimpleDateFormat;import java.util.Date;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executor...

2020-01-08 13:33:47 1159

原创 线程池

优点:1.创建/销毁线程伴随着系统开销,过于频繁的创建/销毁线程,会很大程度上影响处理效率例如:记创建线程消耗时间T1,执行任务消耗时间T2,销毁线程消耗时间T3如果T1+T3>T2,那么是不是说开启一个线程来执行这个任务太不划算了!正好,线程池缓存线程,可用已有的闲置线程来执行新任务,避免了T1+T3带来的系统开销2.线程并发数量过多,抢占系统资源从而导致阻塞我们知道线程能共...

2020-01-08 10:37:05 179

原创 常见排序

冒泡排序:/** * @author zhw *比较相邻的元素。如果第一个比第二个大,就交换他们两个。 *对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。 *针对所有的元素重复以上的步骤,除了最后一个。 *持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。 * */public class BubbleSort...

2019-12-31 11:20:47 154

原创 Rabbitmq

AMQPAMQP,即 Advanced Message Queuing Protocol,高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计。消息中间件主要用于组件之间的解耦和通讯。AMQP的主要特征是面向消息、队列、路由(包括点对点和发布/订阅)、可靠性、安全。RabbitMQ是一个开源的AMQP实现,服务器端用 Erlang 语言编写,支持多种客户端,如:Python、...

2019-12-10 10:55:57 213

原创 堆、栈和队列

堆:堆是在程序运行时,而不是在程序编译时,申请某个大小的内存空间。即动态分配内存,对其访问和对一般内存的访问没有区别。堆是指程序运行时申请的动态内存,而栈只是指一种使用堆的方法(即先进后出)。**栈(stack):**先进后出,删除与加入均在栈顶操作堆栈的特性: 最先放入堆栈中的内容最后被拿出来,最后放入堆栈中的内容最先被拿出来, 被称为先进后出、后进先出。堆栈中两个最重要的操作是PUSH...

2019-11-18 11:26:34 158

原创 RestTemplate

getForEntity()/** * 参数1: String类型 或 URI类型的请求地址 * 参数2: 指定返回的实体类型,class对象 * 参数3: uri参数,可以是变长数组或map * 返回值:ResponseEntity<T>是Spring对HTTP响应的封装,包括了几个重要的元素,如响应码、contentType、contentLength、response ...

2019-11-14 16:21:33 203

原创 springboot+quartz

pom.xml:<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-quartz --><dependency> <groupId>org.springframework.boot</groupId> <ar...

2019-11-07 09:49:06 178

原创 springboot发送邮件

pom.xml:<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> </dependency>配...

2019-11-06 17:11:54 353

原创 MongoTemplate

配置:<!--mongo--><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-mongodb</artifactId></dependency>spr...

2019-10-29 15:17:28 1082

原创 RedisTemplate

通用操作工具:分布式锁加强版 /** * 最终加强分布式锁 * @param key key值 * @return 是否获取到 */public boolean lock(String key) { String lock = LOCK_PREFIX + key; // 利用lambda表达式 re...

2019-10-23 15:23:44 457

原创 POI

pom:<dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</artifactId> <version>4.1.0</version></depen...

2019-10-23 14:25:30 122

原创 二叉树

二叉树:是n(n>=0)个结点的有限集合,该集合或者为空集(称为空二叉树),或者由一个根结点和两棵互不相交的、分别称为根结点的左子树和右子树组成。1)每个结点最多有两颗子树,所以二叉树中不存在度大于2的结点。2)左子树和右子树是有顺序的,次序不能任意颠倒。3)即使树中某结点只有一棵子树,也要区分它是左子树还是右子树。斜树:所有的结点都只有左子树的二叉树叫左斜树。所有结点都是只有右...

2019-10-22 16:59:30 646

原创

树:树(tree)是包含n(n>=0)个结点的有穷集,其中:(1)每个元素称为结点(node);(2)有一个特定的结点被称为根结点或树根(root)。(3)除根结点之外的其余数据元素被分为m(m≥0)个互不相交的集合T1,T2,……Tm-1,其中每一个集合 Ti(1<=i<=m)本身也是一棵树,被称作原树的子树(subtree)。二叉树:每个节...

2019-10-22 16:21:31 107

原创 java递归算法

递归:就是在方法内部调用方法自己本身斐波那契数列:菲波那契数列指的是这样一个数列:1,1,2,3,5,8,13,21,34,55,89,144…分析:这个数列从第三项开始,每一项都等于前两项之和public class FibonacciSequence { public static int fibonacci(int n){ if(n == 1){ ...

2019-10-22 15:09:02 149

原创 代理模式(Proxy pattern)

代理模式:代理模式给某一个对象提供一个代理对象,并由代理对象控制对原对象的引用。代理模式作用:在某些情况下,一个客户类不想或者不能直接引用一个委托对象,而代理类对象可以在客户类和委托对象之间起到中介的作用,其特征是代理类和委托类实现相同的接口。可以通过给代理类增加额外的功能来扩展委托类的功能,这样做我们只需要修改代理类而不需要再修改委托类,符合代码设计的开闭原则。代理类主要负责为委托类预处...

2019-09-29 15:29:51 146

原创 策略模式(Strategy pagttern)

策略模式:策略模式定义了一组算法,并将每一个算法封装起来,让它们可以相互替换。 策略模式让算法的变化独立于使用算法的客户。策略类超过四个,可以考虑混合模式。组成部分:1.抽象策略角色:策略类,通常由一个接口或者抽象类实现。2.具体策略角色:包装了相关的算法和行为。3.环境角色:持有一个策略类引用,给客户端调用。缺点:1.客户端自行决定用哪个策略类。只适用于客户端知道所有的算法或行为的...

2019-09-29 11:27:54 140

原创 springboot+mybatis plus

pom.xml: <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.1.2</ve...

2019-08-29 18:15:01 171

原创 swagger 注解

@Api:用在类上,说明该类的作用。可以标记一个Controller类做为swagger 文档资源属性名称 备注value url的路径值tags 设置这个值、value的值会被覆盖description 对api资源的描述basePath ...

2019-08-29 17:51:09 237

原创 SpringBoot+Swagger2

pom.xml<!--整合Swagger2--> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <v...

2019-08-29 17:42:50 162

空空如也

空空如也

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

TA关注的人

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