自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 linux中netstat命令详解及常见用法

在Linux使用过程中,需要了解当前系统开放了哪些端口,并且要查看开放这些端口的具体进程和用户,可以通过netstat命令进行简单查询。

2024-03-15 09:57:33 640

原创 route add报错SIOCADDRT Network is unreachable

横线部分就是主机的地址范围。所以可以知道gateway的ip范围需要是10.174.240.0到10.174.247.255之间。原因是,添加静态路由规则的时候,需要保证gateway(gw)的IP和eth0(本机IP)在同一个网段内。,其中mask是子网掩码,它结合ip地址使用,把ip地址划分为网络地址和主机地址。在实际的使用过程中,有同学反馈在执行。对于我们这个例子而言,子网掩码是。做&运算,得到网络地址是。先看下我们的主机配置,

2024-03-14 18:23:05 712

原创 linux中ifconfig指令详解

是中用来查询和配置网络接口卡(网卡)的命令,英文全称是network interfaces configuring。使用命令对网卡所做的配置都是临时配置,重启之后都会被还原的。如果要永久配置网卡则需要通过修改配置文件的方式。

2024-03-14 17:07:41 300

原创 springcloud gateway中locator的作用

废话不多说,直接上图

2024-03-11 18:19:24 152

原创 Sentinel的控制台部署在服务器,控制台一直读取不到本机的服务的原因

而且在这个服务器部署的sentinel控制台上面拿不到远程服务器Nacos里面配置的限流规则,但是在本机启动一个dashboard项目就可以看到Nacos里面配置的。

2024-03-06 15:49:36 319

原创 Nacos的注册中心、配置中心、配置隔离、服务隔离

2. application.yml3. 启动类首先我们来看一下,微服务架构下关于配置文件的一些问题:基于上面这些问题,我们就需要配置中心的加入来解决这些问题,配置中心的思路是:2. bootstrap.yml注意:客户端配置文件的名称必须为bootstrap/ application 的应用场景:比 优先加载,应用于系统级别参数配置,一般不会变动;应用于SpringBoot项目的自动化配置;案例:3. 启动类4. controller (@RefreshScope注解**)**

2024-02-28 19:09:43 1401

原创 mybatis中的keyProperty属性详细介绍

在mybatis的配置文件中,keyProperty 和 useGeneratedKeys 往往搭配使用。useGeneratedKeys 参数只针对 insert 语句生效,默认为 false。当设置为 true 时,表示如果插入的表以自增列为主键,则允许 JDBC 支持自动生成主键,并可将自动生成的主键返回。具体用法: useGeneratedKeys="true" keyProperty="id"

2024-02-20 10:22:39 678

原创 springboot注解及原理详解

7.默认参数的key名称是方法里的参数名称,但通过@RequestParam可以自定义另外一个,因为在某些条件下,方法名称固定下来不可以修改了,但请求的参数又需要通过另外一个参数key名称来传递,这样就可以通过这样的方式来实现。6.@RequestParam还可以在参数为空的情况下,为我们设置一个参数的默认值,如图所示,可以看出来,没有参数的情况下,获取到的就是默认值。2.通过idea工具启动web项目,然后通过浏览器访问测试效果,不带参数则获取的参数为null,但页面可以正常显示,请求可以正常的执行。

2023-12-27 19:48:05 2172

原创 关于Spring Boot 2.7后WebSecurityConfigurerAdapter的过期问题,SpringSecurity的最新最全配置

进入springboot 2.7 后,一个重要的类WebSecurityConfigurerAdapter过期了。

2023-11-29 14:54:32 1602

原创 一个初始springboot项目最基本的配置

这个parent是springboot最最核心的引入,所有的配置都在里面,并且是springboot项目必须引入的。现在都是web项目居多,我们还需要引入一个需要的依赖。我们也可以引进测试类,方便测试。最后我们可以引入插件。

2023-11-29 08:41:51 347

原创 maven中模块之间的依赖关系导入

废话不多说,直接看图片。

2023-11-25 11:52:35 455

原创 一主二从三哨兵高可用集群启停脚本

②:我们将 sentinel26380.conf 复制为 sentinel26380.conf.bak 备份起来,同时 sentinel26381.conf,sentinel26382.conf 也这样做。①:我们先将 redis6380.conf 复制为 redis6380.conf.bak 备份起来,同时 redis6381.conf,redis6382.conf 也这样做。④:然后创建脚本文件 vim shutdown-redis-sentinel.sh。

2023-11-13 14:40:18 37

原创 公平锁下的hasQueuedPredecessors原理解析

理解了上面那个,我们再来介绍一下hasQueuedPredecessors方法,该方法的作用是,判断在当前线程之前是否有其他线程在排队,在ReentrantLock公平锁模式下的tryAcquire()内会调用这个方法。以上就是AQS,线程的入队方法,注意看上述代码中我用“======”标出来的分割线,当执行完compareAndSetTail(t, node)后,t.next = node 还没执行,那么。即,tail的prev连上了,next还没连上。②:线程已入队(已经执行过入队方法了)

2023-10-12 19:37:11 60

原创 自定义线程池(详解)

/自定义拒绝策略接口@Slf4j // 自定义线程池 // 用泛型T,因为有Runnable和Callable两种情况 public class ThreadPool {// 任务队列 private BlockingQueue < Runnable > taskQueue;// 工作线程集合 private HashSet < Worker > workers = new HashSet < >();

2023-10-05 21:08:00 76

原创 对力扣43题,字符串相乘问题的看法

【代码】对力扣43题,字符串相乘问题的看法。

2023-10-03 19:34:03 35 1

原创 对力扣31题,下一个排列问题的看法

①字典序字典序就是按照字典中出现的顺序对字符进行排序。②全排列给定多个字符,可以按照任意顺序进行排列,所有排列称为全排列。例如字符串“abc”的全排列包括:“abc”、“cab”、“cba”、“bca”、“bac”、“acb”。③字典序全排列对于给定多个字符的全排列里,每一种排列对应一个字符串,如果这些字符串按照字符串大小的顺序进行排序,那么就这种排序是基于字典序的全排列,也就是对给定字符的全排列按照字典序进行排序。

2023-10-02 11:25:41 35 1

原创 对力扣29题,两数相除问题的看法

因为采用转换为Long类型来解决越界问题,不符合题目要求,所以不能通过力扣的测试。

2023-09-26 23:29:45 32 1

原创 对力扣460题,LFU缓存问题的看法

【代码】对力扣460题,LFU缓存问题的看法。

2023-09-25 20:46:47 33 1

原创 排列组合的一些公式

https://www.cnblogs.com/1024th/p/10623541.html

2023-09-24 10:35:51 33 1

原创 设计模式——享元模式

①如果一个应用程序使用了大量的对象,而大量的这些对象造成了很大的存储开销时就应该考虑使用;②对象的大多数状态可以是外部状态,如果删除了对象的外部状态,那么可以用相对较少的共享对象取代很多组对象,此时可以考虑享元模式//false```java//false①如果一个应用程序使用了大量的对象,而大量的这些对象造成了很大的存储开销时就应该考虑使用;②对象的大多数状态可以是外部状态,如果删除了对象的外部状态,那么可以用相对较少的共享对象取代很多组对象,此时可以考虑享元模式。

2023-09-19 20:42:34 39 1

原创 常见UML符号详解

常见UML符号详解 - 简书

2023-09-19 19:52:17 61 1

原创 LongAdder源码分析

LongAdder的基本思路就是分散热点,将value值分散到一个数组中,这个数组是他的父类Striped64类的一个变量transient volatile Cell[] cells,不同线程会命中到数组的不同槽中,各个线程只对自己槽中的那个值进行CAS操作,这样热点就被分散了,冲突的概率就小很多。如果要获取真正的long值,只要将各个槽中的变量值累加返回。

2023-09-18 17:07:08 72 1

原创 java中关于实现类实现多个接口的相互转换的问题

Cat只实现Animal这一个接口。Dog类实现这两个接口。

2023-08-17 12:39:35 111 1

原创 最痛的领悟---maven的filtering,includes,excludes标签用法

地址

2023-08-02 12:31:17 106 1

原创 函数式编程

​ Lambda是JDK8中一个语法糖。他可以对某些匿名内部类的写法进行简化。它是函数式编程思想的一个重要体现。让我们不用关注是什么对象。而是更关注我们对数据进行了什么操作。​ Java8的Stream使用的是函数式编程模式,如同它的名字一样,它可以被用来对集合或数组进行链状流式的操作。可以更方便的让我们对集合或数组操作。​ 我们在编写代码的时候出现最多的就是空指针异常。所以在很多情况下我们需要做各种非空的判断。if(author!= null) {​ 尤其是对象中的属性还是一个对象的情况下。

2023-07-27 19:35:31 29 1

原创 cors配置失效方案

【代码】cors配置失效方案。

2023-07-26 11:42:20 222 1

原创 spring高级

BeanFactory 接口,典型功能有:ApplicationContext 接口,是 BeanFactory 的子接口。它扩展了 BeanFactory 接口的功能,如:可以看到,我们课上讲的,都是 BeanFactory 提供的基本功能,ApplicationContext 中的扩展功能都没有用到。com.itheima.a01 包通过这个示例结合 debug 查看 ApplicationContext 对象的内部结构,学到:到底什么是 BeanFactoryBeanFactory 能干点啥Appli

2023-07-25 20:53:38 99

原创 SpringSecurity

SpringSecurity 实战第一章 权限管理权限管理SpringSecurity 简介整体架构权限管理基本上涉及到用户参与的系统都要进行权限管理,权限管理属于系统安全的范畴,权限管理实现对用户访问系统的控制,按照安全规则或者安全策略控制用户可以访问而且只能访问自己被授权的资源。权限管理包括用户身份认证和授权两部分,简称认证授权。对于需要访问控制的资源用户首先经过身份认证,认证通过后用户具有该资源的访问权限方可访问。认证身份认证,就是判断一个用户是否为合法用户的处理过程。最常用的

2023-07-25 20:50:24 390

原创 如何查找IDEA中JSP被翻译成Servlet之后的位置

然后我们按照上图work目录的依次查找到,就能找到程序文件。在此页面右键点击选择 “在终端打开”然后我们打开tomcat服务器。然后输入 tree /F。

2023-05-19 17:53:42 219

原创 倒序遍历删除

在java的集合中,如果我们需要边遍历边删除,我们可以采用倒序的方式,来防止出现错误。

2023-04-02 15:12:38 239

原创 关于对哈夫曼树解码的最后一个字节的处理

由韩顺平老师的网课代码,其对哈夫曼树解码的最后一个字节可能会出现bug。在此提出解决方法,在压缩过程中多开辟一个空间用于存储最后一个字节的长度。

2023-04-01 16:38:21 119

原创 java 中文转 bytes

所以此时中文是以utf-8的编码存储在计算机中对应三个字节。问题:为什么 “哈” 对应 [-27,-109,-120]先通过在线工具得出 “哈” 的utf-8编码。java中文转bytes。

2023-03-25 17:04:16 533

原创 java实现文件夹的递归式复制

递归式复制指的是当要复制的目录下 存在子目录,且子目录中存在子目录或文件的时候,将逐一复制它们。windows的复制默认是这样的。如果不递归复制,结果你得到的目录只包含空的子目录,其子目录下的内容将不会复制。我们先来看一下什么是递归式复制。

2023-03-22 20:19:17 408

原创 关于timeit模块使用Timer函数的setup变量的一个问题的解决

import timeitdef t1(): li=[] for i in range(10000): li.append(i)time1=timeit.Timer("t1()","from test2 import t1")print(time1.timeit(10000))print(__name__)相当于我从另一个名字相同,内容相同的模块导入了此模块,第一次为调用,第二次就为文件运行自己...

2022-04-12 15:37:07 89

空空如也

空空如也

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

TA关注的人

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