自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 2.行为参数的演变过程

​ **行为参数**化是软件开发模式,可以处理频繁变更的需求。它让你把一个代码块准备好但不执行,以后可以被其他部分调用,也可以作为参数传递给另一个方法,推迟执行。这样,方法的行为就基于参数化的代码块。

2024-05-23 10:25:38 605

原创 为什么要学习Java8?

Java 8提供了一个新的API(称为“流”,Stream),它支持许多处理数据的并行操作,其思路和在数据库查询语言中的思路类似——用更高级的方式表达想要的东西,而由“实现”(在这里是Streams库)来选择最佳低级执行机制。

2024-05-17 10:47:59 502

原创 PowerShell能开发解决的问题

PowerShell能开发解决的问题:1、PowerShell 可以直接替掉Xshell等连接linux的的客户端,连接服务器。2、简化git命令。3、缩短服务器 操作的步骤。4.简化工作流程

2024-05-14 15:55:30 402

原创 什么是 PowerShell

PowerShell 是一种跨平台的任务自动化解决方案,由命令行 shell、脚本语言和配置管理框架组成。 PowerShell 在 Windows、Linux 和 macOS 上运行。

2024-05-14 15:52:47 356

原创 Bandizip压缩工具介绍

​一台电脑必备的软件就是压缩软件,Bandizip 是我认为比较好用的一款压缩软件,也可以结合PowerShell ,用命令批量操作文件。

2024-05-14 15:50:30 1097

原创 Java日期比较的方法有三类

Java日期比较的方法有三类;1.字符串日期的比较2.Java8中的LocalDate做日期比较3.Java 中Date做日期比较

2024-05-10 11:49:12 1848

原创 无法加载文件Microsoft.PowerShell_profile.ps1...因为在此系统上禁止运行脚本

我知道只要不是Undefined和RemoteSigned 的是不行的,我的当时 CurrentUser项对应的执行策略为Restricted ,需要改为 RemoteSigned。​ 按 wind (四个小方块)键盘,搜索PowerShell,点击左侧的Windows PowerShell,点击以管理员身份运行。输入A即可,此时我们再查看执行策略列表,可查看到CurrentUser对应的策略已被修改为RemoteSigned。此问题是在工作时虚拟桌面上遇见的,一般自己的电脑时很少遇见的。

2024-01-11 09:11:13 1193

原创 linux环境安装mysql8数据库

在linux,环境下安装mysql8

2023-12-28 10:11:31 1536

原创 oracle排序问题

在工作中遇到一个排序的问题,很简单的用了排序函数,但是在功能上线了几天,发现排序不对,发现一个数字字符串的排序会引发这么多的问题,欢迎一起探讨。

2023-07-12 10:44:50 1340

原创 String.format用法

String.format使用方法,字符占位挺好用,值得看

2023-06-29 18:35:28 898

原创 浮点数格式化数字

常用格式化浮点数字的方式

2023-06-25 13:36:22 441

原创 Java 项目中文乱码

在Java项目中经常会遇见中文乱码的情况,这边文章告诉我们中文为什么乱码,以及怎么在IDEA中解决乱码。

2023-06-25 13:08:55 1093

原创 字符串12.0以点分隔split(“\\.“)

Java 中参数是正则参数时,用到正则表达式中有特殊含义的字符时需要用上\\双反斜杠

2023-06-21 15:26:54 1356

原创 linux常见符号、操作和命令解释

linux 常用命令、操作解释,让我们更好的操作linux系统,这篇文章可以满足日常java开发对服务的操作。

2023-05-26 15:50:07 8598

原创 0为什么使用命令行

命令行操作,不只是linux才有的,windows系统下也有好的终端操作工具。

2023-05-16 11:12:31 113

原创 1、Kafka基本概念及专业术语介绍

Kafka也是一种消息队列,主要用于金融行业和大数据场景,这篇文章给大家介绍下kafka的由来和kafka的专业术语,让大家对kafka有一个整体的认识。

2022-12-09 10:15:50 573

原创 5.RabbitMQ高级特性

这篇文章主要针对RabbitMQ高级特性进行讲解,在使用中怎么确保消息可靠性投递,消费端限流,TTL,什么是死信队列,死信队列怎么当做延迟队列使用,消费消息需要遵守的幂等性及消息加压的情况及简单的处理方式。

2022-12-01 10:30:34 742

原创 4.RabbitMQ 消息确认机制

- RabbitMQ在传递消息的过程中充当了代理人(Broker)的角色,那生产者(Producer)怎样知道消息被正确投递到 Broker了呢?- RabbitMQ提供了监听器(Listener)来接收消息投递的状态。 消息确认涉及两种状态:Confirm与Return。

2022-11-29 22:09:07 892

原创 3.RabbitMQ工作模式介绍

Rab5bitMQ的5种工作模式介绍;1. 简单模式 HelloWorld;2. 工作队列模式 Work Queue; 3. 发布订阅模式 Publish/subscribe;4. 路由模式 Routing;5.通配符模式 Topic

2022-11-29 18:15:58 619

原创 2.RabbitMQ安装

2.RabbitMQ在linux环境下简单的安装

2022-11-28 13:03:52 694

原创 1.1MQ的基本概念,优劣势介绍及 RabbitMQ简介

MQ概念介绍,MQ的应用解耦,异步提速,削峰填谷优势介绍及劣势介绍。MQ主流产品对比,RabbitMQ产品简介。

2022-11-27 15:45:03 1034

原创 1.2 Zookeeper 的 ACL 权限控制、内存数据和持久化介绍

1.2 Zookeeper 的 的 ACL 权限控制、内存数据和持久化介绍,对这些概念有基本的认识,为后面学号Zookeeper 打好基础

2022-11-27 10:56:17 516

原创 1.1Zookeeper的安装和节点下的命令操作及事件监听

Zookeeper 安装和命令下操作节点及节点的事件监听操作

2022-11-26 15:44:06 455

原创 1.Zookeeper是什么和Zookeeper的核心概念

Zookeeper是一个分布式协调框架,是Apache Hadoop 的一个子项目,它主要是用来解决分布式应用中经常遇到的一些数据管理问题,如:统一命名服务、状态同步服务、集群管理、分布式应用配置项的管理等。Zookeeper 是一个用于存储少量数据的基于内存的数据库,主要有两个核心概念:文件系统数据结构+监听通知机制。

2022-11-26 14:52:59 191

原创 10.0 SpringMVC源码分析之MVC 模型由来

SpringMVC 前世今生,MVC模型的由来

2022-11-22 17:07:15 384

原创 5.1 Spring源码-读取不完整Bean的解决原理

循环依赖中,二级缓存解决循环依赖的问题,但是并发的时候会存在不完整对象,Spring是怎么解决的呢?可以看下此篇文章,里面有答案。

2022-11-14 15:46:18 751

原创 5.SpringIOC源码-Bean循环依赖讲解

**getBean的整个过程:**1)getgetSingleton 从缓存中获取对象; - 从一级缓存中获取完整对象; - 若一级对象中没有并且是循环依赖,从二级缓存获取; - 若二级缓存没有并且是循环依赖,从三级缓存获取; - 若三级缓存不为空,从三级缓存中的函数接口中获取对象,并放入二级缓存,删除三级缓存。2)对象实例化;3)对象放入三级缓存4)对象属性赋值5)对象初始化后放入一级缓存,并删除二级缓存。

2022-11-13 12:45:50 464

原创 3.Spring源码编译

为了更好的掌握Spring的核心功能,最好是下载源码编译后查看代码,这样可更方便的学习代码,理解Spring的核心功能。

2022-11-07 11:29:29 386

原创 6.2Redis键值设计&bigkey的产生和危害和优化&连接池的优化建议&过期清理策略详解

Redis的键值设计规范,bigkey产生原因及危害和优化方案,redis命令使用推荐,redis连接池参数配置详解及推荐,redis的键的清理策略详解。

2022-11-07 10:15:20 233

原创 6.1多级缓存架构详解&Redis缓存穿透&Redis缓存失败&Redis缓存雪崩&Redis缓存与数据库不一致问题解决

多级缓存架构详解&Redis缓存穿透&Redis缓存失败&Redis缓存雪崩&Redis缓存与数据库不一致问题产生原因及解决方案。

2022-11-07 10:05:24 314

原创 2.Spring源码IOC脉络

Spring,提起它我们就会想到IOC 控制反转,AOP切面和声明式事务等,这三个是最常见也是我们最常用的。IOC 控制反转是一种设计理念,用来解决类和类之间的耦合问题,使用DI实现,将对象的创建交给Spring容器,通过类,xm配置文件,注解 注入到IOC 容器中。

2022-11-01 20:48:09 472

原创 1.0 Spring体系架构介绍(基于4.x)

架构体系图如下:​ 该模块主要包含Core、Beans,Context和SpEL模块。其中Core和Beans是整个框架最基础的部分,提供IOC和依赖注入特性。这里最重要的概念就是BeanFactory,提供了以Factor模式来消除Bean之间的依赖问题。​ 提供符合AOP Alliance标准的而向切面编程的实现,可以让你定义如方法拦截器和切点,从而降低程序之间的据合性。该模块且有来自Spring Intearation项目的关键抽象,如Message,MessageChannel,MessaceH

2022-10-31 15:05:11 370

原创 12.并发之ForkJoin框架详解

FoekJoinPool 与内部类 WorkQueue 共享的一些常量FoekJoinPool 中相关常量和实例字段AC: 正在运行工作线程数减去目标并行度,高16位TC:总工作线程数减去目标并行度,中高16位SS: 栈顶等待线程的版本计数和状态,中低16位ID:栈顶WorkQueue在池中的索引(poollndex),低16位。

2022-10-29 13:30:33 1603

原创 11.定时任务&定时线程池详解

当我们不用任务框架时,我们想自己写一个定时任务时,我们能想起那个工具类呢?Timer ?还有吗?不知道了,下面我们要讲下ScheduledThreadPoolExecutor,定时任务线程池,可以执行一次任务,还可以执行周期性任务。

2022-10-27 13:07:11 7088

原创 10.并发编程之Executor线程池原理

线程池”,顾名思义就是一个线程缓存,线程是稀缺资源,如果被无限制的创建,不仅会消耗系统资源,还会降低系统的稳定性,因此 Java 中提供线程池对线程进行统一分配、调优和监控 。这里大致介绍线程池的大致执行过程及参数的讲解。

2022-10-25 16:40:03 441

原创 9.2 ArrayList&CopyOnWriteArrayList详解

ArrayList是Java集合框架中的一个重要的类,它继承于AbstractList,实现了List接口,是一个长度可变的集合,提供了增删改查的功能,允许null的存在。ArrayList类还是实现了RandomAccess接口,可以对元素进行快速访问。实现了Serializable接口,说明ArrayList可以被序列化 。ArrayList线程不安全,线程安全的版本是CopyOnWriteArrayList。

2022-10-23 11:33:43 727

原创 9.1 Hashtable与ConcurrentHashMap详解

Hashtable 和HashMap用法是和底层的结构都是数组+链表+红黑树,都是key-value键值对数据的存储,最大的区别就是HashMap线程不安全,Hashtable 线程安全。HashMap当什么时候会发生线程不安全呢?当两个线程同时新增在数组上同一位置的数据时(同一链表数据),两线程同时操作数据可能被冲掉。

2022-10-22 21:32:51 651

原创 9.0 HashMap底层原理及部分源码分析

HashMap 在JDK1.7版本时底层数据结构是数组+链表,但是1.7时HashMap的并发扩容会导致死循环;JDK1.8时底层的数据结构变成数组+链表+红黑树,修改了并发扩容逻辑,并且提升了HashMap的性能。

2022-10-20 19:14:49 370

原创 8.并发编程之Automic&Unsafe魔法类详解

并发编程的三大 特性:可见性、有序性、原子性,可见性和有序性用volatile、synchronized、Lock可以保证,但是原子性只有synchronized、Lock可以保证,并且在同一时刻只能有一个线程访问来保证原子性的性能低,有更高效的办法来保证原子性吗?当然了,那就是Automic包下有很多可以保证原子性的原子操作。在java中可以通过**锁**和**循环CAS**的方式来实现原子操作。在Atomic包里一共有12个类,四种原子更新方式,分别是原子更新基本类型,原子更新数组,原子更新引用和原子

2022-10-19 19:18:26 689

原创 7.CountDownLatch&Semaphore的应用

BlockingQueue、Semaphore 和CountDownLatch 线程之间通信的桥梁和工具 。Semaphore可以应用到服务调用之间的限流;CountDownLatch和CyclicBarrier区别如下:CountDownLatch是以减数的方式而CyclicBarrier是以加数的方式;CountDownLatch强调的是一个等待其他多个线程而CyclicBarrier是一组线程相互等待;CountDownLatch不可重复利用而CyclicBarrier可重复利用。

2022-10-18 21:22:58 491

空空如也

空空如也

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

TA关注的人

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