05 2023 档案
zookeeper中Shell客户端连接集群和创建节点
摘要:1.zookeeper Shell 1.1客户端连接 运行 zkCli.sh -server ip 进入命令行工具。 输入help,输出zk shell提示。 在win系统中用zkCli.cmd启动 1.2启动本机的客户端命令 ./zkCli.sh 1.3启动服务器的客户端命令 ./zkCli.sh 阅读全文
posted @ 2023-05-11 10:47 张伯灵 阅读(104) 评论(0) 推荐(0) 编辑
zookeeper中的数据模型
摘要:1.数据模型:采用树形层次结构,zookeeper树中的每个节点被成为一个Znode Znode的特点: 1)兼具文件和目录两个特点。可以像文件一样维护数据,也可以作为路径标识的一部分。 2)具有原子性操作。读操作将获取与节点相关的所有数据,写操作也将替换掉节点的所有数据。另外每个节点都有自己的AC 阅读全文
posted @ 2023-05-10 18:47 张伯灵 阅读(53) 评论(0) 推荐(0) 编辑
zookeeper集群的搭建和描述
摘要:0.远程连接工具SecureCRT 1.zookeeper集群搭建一般指的是zookeeper分布式安装。通常是2n+1台servers组成(一般为奇数)。目的是为了保证leader的选举(基于paxos算法的实现)能够得到多数的支持。 2.过程: leader+follower模式: 2.1)安装 阅读全文
posted @ 2023-05-10 18:46 张伯灵 阅读(45) 评论(0) 推荐(0) 编辑
关于springboot3.0对于JDK的版本要求
摘要:最近发布的springboot3.0官方明确宣布对JDK的要求最低是17,但是对于大部分人来说,JDK的版本更新迭代我们还是选用8的版本,最主要的原因是8的版本稳定,一个版本不稳定的话,即使换成高级的版本,谁有空天天去维护新版本的bug啊,再说啦,大部分的公司目前还没有这个实力去更新迭代。 所以学一 阅读全文
posted @ 2023-05-10 18:46 张伯灵 阅读(1498) 评论(0) 推荐(0) 编辑
Mac快捷键整理
摘要:1、新建文件夹的快捷键是Command-Shift-N 2、新建文本文档 Command-Shift-M 关注我的公众号SpaceObj 领取idea系列激活码 阅读全文
posted @ 2023-05-10 18:45 张伯灵 阅读(202) 评论(0) 推荐(0) 编辑
Zookeeper的特性
摘要:zookeeper本质上是一个分布式的小文件存储系统。类似于文件系统的目录树方式的数据存储。并且对节点进行管理,对数据内容进行监控。 能做的事情:基于数据的集群管理。例如:统一命名服务、分布式配置管理、分布式消息队列、分布式锁、分布式协调功能等。 分布式协调服务的开源框架。主要是来解决分布式集群中应 阅读全文
posted @ 2023-05-10 18:44 张伯灵 阅读(66) 评论(0) 推荐(0) 编辑
idea给普通项目打war包
摘要:@(idea给普通项目打war包) 摘抄 https://jingyan.baidu.com/article/adc81513c44e2df723bf73ab.html 关注我的公众号SpaceObj 领取idea系列激活码 阅读全文
posted @ 2023-05-10 18:40 张伯灵 阅读(13) 评论(0) 推荐(0) 编辑
跨域名访问应用
摘要:最近客户有个需求是在不同域名下运行的项目的页面,要求提交数据给不同域名下的项目 为了快速解决问题,采用了jsonp的方法,快速解决了跨域问题 <!-- head头文件引入jquery-1.8.3.min.js,这里是必须添加的 --> <script src="./js/jquery-1.8.3.m 阅读全文
posted @ 2023-05-10 18:40 张伯灵 阅读(12) 评论(0) 推荐(0) 编辑
关于String 对象的 intern()方法的使用
摘要:请说出下面程序的输出 public class StringEqualTest { public static void main(String[] args) { String s1 = "Programming"; String s2 = new String("Programming"); S 阅读全文
posted @ 2023-05-10 18:40 张伯灵 阅读(19) 评论(0) 推荐(0) 编辑
动态访问次数的实现
摘要:实现动态的访问次数 1.在单个页面想要实现访问次数 连接数据库,在系统的字典项中,或者系统常量里面进行调用和修改。 2.在不同页面实现访问次数 连接数据库,给表结构添加一个访问次数的字段。 刚刚测试成功了:https://www.zhrzhr.xyz/guns-vip-main/projects 阅读全文
posted @ 2023-05-10 18:39 张伯灵 阅读(12) 评论(0) 推荐(0) 编辑
Java中的多态性
摘要:Java的多态性 就是当多个子类都继承当前的一个类,并且都重写了父类的方法,在创建不同子类对象指向的父类引用,相同的引用对象调用的相同的方法实现了不同的行为效果 关注我的公众号SpaceObj 领取idea系列激活码 阅读全文
posted @ 2023-05-10 18:39 张伯灵 阅读(14) 评论(0) 推荐(0) 编辑
周期性任务的实现
摘要:周期性任务线程 这线程负责定时器事件(也就是中断),用来调度周期性操作的执行。 根据周期性任务线程定义的启发 在做特定任务实现的时候,比如说给某个用户开启一个会员,但是会员是有一定的年限的,那么在设置会员期限的时候,可以给会员设置好创建会员的开始时间和结束时间,每当会员进行登录的时候,就执行一个判断 阅读全文
posted @ 2023-05-10 18:39 张伯灵 阅读(30) 评论(0) 推荐(0) 编辑
JavaScript基础知识点
摘要:1.文本框监听器 onmouseout="functionName()",在input标签中加入这个组件,在鼠标进入文本框和移出文本框的时候会调用functionName这个函数。通过这个函数我们可以向后台请求接口,或者改变当前页面的某些属性。 2.a标签的按钮监听器 在写a标签的按钮监听器的时候可 阅读全文
posted @ 2023-05-10 18:38 张伯灵 阅读(13) 评论(0) 推荐(0) 编辑
Spring常用注解说明
摘要:spring 注解 核心注解 @required 在Bean的set方法上使用,表示该属性不可为空 @Autowired 自动注入Bean,方式为ByType。使用@Autowired(required = false)时,即便找不到Bean也不会报错 @qualifier 该注解通常和@Autow 阅读全文
posted @ 2023-05-10 18:37 张伯灵 阅读(20) 评论(0) 推荐(0) 编辑
把项目放到服务器上面,然后发邮件的时候timeout或者发送超时或者请求超时
摘要:发生这个的原因是控制台没有开启25端口号,还有个别邮箱特殊的端口号没有开放;可以查询特定邮箱的端口号是多少,然后对它进行放通 阅读全文
posted @ 2023-05-10 18:37 张伯灵 阅读(47) 评论(0) 推荐(0) 编辑
Netty原理架构解析
摘要:本文基于 Netty 4.1 展开介绍相关理论模型,使用场景,基本组件、整体架构,知其然且知其所以然,希望给大家在实际开发实践、学习开源项目方面提供参考。Netty 是一个异步事件驱动的网络应用程序框架,用于快速开发可维护的高性能协议服务器和客户端。JDK 原生 NIO 程序的问题JDK 原生也有一 阅读全文
posted @ 2023-05-10 18:36 张伯灵 阅读(76) 评论(0) 推荐(0) 编辑
netty入门
摘要:一、认识Netty https://www.jianshu.com/p/b9f3f6a16911 二、动手搭建HttpServer https://www.jianshu.com/p/ed0177a9b2e3 三、Decoder和Encoder https://www.jianshu.com/p/f 阅读全文
posted @ 2023-05-10 18:36 张伯灵 阅读(13) 评论(0) 推荐(0) 编辑
netty源码分析
摘要:Netty源码分析之自定义编解码器 在日常的网络开发当中,协议解析都是必须的工作内容,Netty中虽然内置了基于长度、分隔符的编解码器,但在大部分场景中我们使用的都是自定义协议,所以Netty提供了 MessageToByteEncoder 与 ByteToMessageDecoder 两个抽象类, 阅读全文
posted @ 2023-05-10 18:35 张伯灵 阅读(169) 评论(0) 推荐(0) 编辑
Redis主从复制,数据延迟,数据不一致问题
摘要:出现这种问题的原因一般是Redis版本的问题,在使用Redis3.2版本以及之后的版本就不会出现这种问题啦 Redis底层解决方案:通过对key的状态值进行判断是否过期,如果key过期,那么返回空,如果没有过期就直接返回数据; 因为在主从复制的过程中是需要耗费时间的,在这个过程中如果请求数据,那么会 阅读全文
posted @ 2023-05-10 18:34 张伯灵 阅读(249) 评论(0) 推荐(0) 编辑
MySQL 主从复制解决了什么问题?出现同步延迟如何解决?
摘要:主从复制解决的问题 数据分布:通过复制将数据分布到不同地理位置 负载均衡:读写分离以及将读负载到多台从库 备份:可作为实时备份 高可用性:利用主主复制实现高可用 复制原理 复制的原理其实很简单,仅分为以下三步: 在主库上把数据更改记录到二进制日志binary log中,具体是在每次准备提交事务完成数 阅读全文
posted @ 2023-05-10 18:33 张伯灵 阅读(39) 评论(0) 推荐(0) 编辑
Java 8 中的 Stream 遍历树形结构
摘要:第一步、模拟查看数据库所有数据到List里面 /** * Menu * * @author lcry * @date 2020/06/01 20:36 */ @Data @Builder public class Menu { /** * id */ public Integer id; /** * 阅读全文
posted @ 2023-05-10 18:33 张伯灵 阅读(153) 评论(0) 推荐(0) 编辑
MySql 主从复制及配置实现
摘要:一、什么是Mysql主从复制 MySQL主从复制是其最重要的功能之一。主从复制是指一台服务器充当主数据库服务器,另一台或多台服务器充当从数据库服务器,主服务器中的数据自动复制到从服务器之中。对于多级复制,数据库服务器即可充当主机,也可充当从机。MySQL主从复制的基础是主服务器对数据库修改记录二进制 阅读全文
posted @ 2023-05-10 18:32 张伯灵 阅读(56) 评论(0) 推荐(0) 编辑
netty实现聊天服务器
摘要:非阻塞的NIO可以开发出性能很不错的网络应用程序,而Netty和Mina这类NIO框架对Java NIO做了封装,可以让高性能IO程序的开发变得容易。 Netty是一个基于Java NIO的网络通信框架,它有两个特点 基于事件 全异步 话不多说先上代码,从代码感受Netty的思想是最直接的。要想实现 阅读全文
posted @ 2023-05-10 18:31 张伯灵 阅读(46) 评论(0) 推荐(0) 编辑
macOS&Linux设置JDK版本
摘要:MacOS 下安装多个版本的 JDK 并统一管理 现在的 MacOS 都不自带 JDK 了,如果你在未安装 JDK 的 MacOS 中执行 Java 命令会出现如下提示: AigeStudio@aige$ java -version No Java runtime present, requesti 阅读全文
posted @ 2023-05-10 18:30 张伯灵 阅读(62) 评论(0) 推荐(0) 编辑
Mac终端设置文件夹颜色
摘要:第一步:需要在根目录打开.bash_profile文件,没有的话自动创建 vim .bash_profile 然后在文件里最后一行下面加入如下代码并保存文件 :wq退出 export CLICOLOR='Yes' # 是否输出颜色 # export LS_OPTIONS='--color=auto' 阅读全文
posted @ 2023-05-10 18:29 张伯灵 阅读(527) 评论(0) 推荐(0) 编辑
dirty pipe漏洞,解决办法
摘要:2022 年 3 月 7 日,Max Kellermann公开披露了 Linux 内核中的一个漏洞,后来被命名为 Dirty Pipe,该漏洞允许低权限进程写入任意可读文件,从而导致权限提升。此漏洞影响从 5.8 开始的内核版本。在发现之后,它已针对所有当前维护的 Linux 版本 5.16.11、 阅读全文
posted @ 2023-05-10 18:29 张伯灵 阅读(55) 评论(0) 推荐(0) 编辑
NioEventLoop启动过程
摘要:关注我的公众号SpaceObj 领取idea系列激活码 阅读全文
posted @ 2023-05-10 18:28 张伯灵 阅读(9) 评论(0) 推荐(0) 编辑
io多路复用
摘要:什么是同步? 同步可以理解为排队打饭,一个一个执行。 什么是阻塞? 阻塞是相对于调用者来说的,比如你去接你女朋友吃饭,你是主动去接人家,你到女朋友楼下,你得等女朋友吧,等到女朋友下来以后才能一起去吃饭吧,这就是阻塞。 什么是IO多路复用? IO 多路复用是一种同步IO模型,实现一个线程可以监视多个文 阅读全文
posted @ 2023-05-10 18:28 张伯灵 阅读(17) 评论(0) 推荐(0) 编辑
ExcuterService源码解析
摘要:java.util.concurrent public interface ExecutorService extends Executor 一个Executor ,它提供了管理终止的方法和可以生成Future以跟踪一个或多个异步任务的进度的方法。 可以关闭ExecutorService ,这将导致 阅读全文
posted @ 2023-05-10 18:27 张伯灵 阅读(31) 评论(0) 推荐(0) 编辑
ScheduledExecutorService源码解析
摘要:java.util.concurrent public interface ScheduledExecutorService extends ExecutorService 一个ExecutorService可以安排命令在给定的延迟后运行,或者定期执行。 schedule方法创建具有各种延迟的任务并 阅读全文
posted @ 2023-05-10 18:27 张伯灵 阅读(70) 评论(0) 推荐(0) 编辑
NioEventLoop关系继承图
摘要:NioEventLoop关系继承图,可以根据继承图的结构查看netty的知识体系 关注我的公众号SpaceObj 领取idea系列激活码 阅读全文
posted @ 2023-05-10 18:26 张伯灵 阅读(11) 评论(0) 推荐(0) 编辑
Iterable<T>源码解析
摘要:该接口有三个方法: 第一个方法:Iterator iterator(); 集合上的迭代器。 Iterator在 Java 集合框架中取代了Enumeration 。迭代器在两个方面不同于枚举: 迭代器允许调用者在具有明确定义的语义的迭代期间从底层集合中删除元素。 方法名称已得到改进。 第二个方法:f 阅读全文
posted @ 2023-05-10 18:26 张伯灵 阅读(24) 评论(0) 推荐(0) 编辑
CountDownLatch用法解析
摘要:java.util.concurrent public class CountDownLatch extends Object 一种同步辅助,允许一个或多个线程等待,直到在其他线程中执行的一组操作完成。 CountDownLatch使用给定的计数进行初始化。由于调用了countDown方法, awa 阅读全文
posted @ 2023-05-10 18:25 张伯灵 阅读(106) 评论(0) 推荐(0) 编辑
SpringAOP实现日志收集管理功能
摘要:第一步引入必要的依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <group 阅读全文
posted @ 2023-05-10 18:25 张伯灵 阅读(65) 评论(0) 推荐(0) 编辑
spring的切面+分布式登录验证方案
摘要:前置条件 创建Redis服务器,根据业务自己配置集群或者单例模式 第一步:创建jwt验证服务 服务中包括的接口: private String secret = "XXXXXXXXXXXX"; public String createToken(String userId,String pwd); 阅读全文
posted @ 2023-05-10 18:24 张伯灵 阅读(20) 评论(0) 推荐(0) 编辑
JVM调优
摘要:常用参数说明 -Xms:初始堆大小,默认为物理内存的1/64(<1GB);默认(MinHeapFreeRatio参数可以调整)空余堆内存小于40%时,JVM就会增大堆直到-Xmx的最大限制 -Xmx:最大堆大小,默认(MaxHeapFreeRatio参数可以调整)空余堆内存大于70%时,JVM会减少 阅读全文
posted @ 2023-05-10 18:23 张伯灵 阅读(21) 评论(0) 推荐(0) 编辑
Redis的aof调整最终的累加日志
摘要:实际上是基于内存数据重写aof 开辟一个子进程对内存进行遍历,转化成一系列redis的操作指令,序列化到新的AOF日志文件中,再将操作期间的增量AOF日志追加到新的AOF上,最后用新的AOF替代旧的AOF,从而大大减小了AOF的体积。 fork子进程去遍历内存中的数据 将数据转换成aof指令;同时 阅读全文
posted @ 2023-05-10 18:23 张伯灵 阅读(18) 评论(0) 推荐(0) 编辑
JVM垃圾回收器
摘要:垃圾回收器 一 GC的分类与性能指标 按线程数分 串行垃圾回收器 但CPU,配置较低,只有一条GC线程 并行垃圾回收器 并发较强的CPU 多条GC 按照工作模式 并发式垃圾回收器 与应用程序线程交替工作,以尽可能减少应用程序的停顿时间。 独占式垃圾回收器 一旦运行,就停止应用程序中的所有用户线程,直 阅读全文
posted @ 2023-05-10 18:23 张伯灵 阅读(32) 评论(0) 推荐(0) 编辑
项目配置JVM实践
摘要:在项目配置之前要知道每一个java进程都有一个默认的JVM参数配置 例如在运行一个没有配置参数的项目,用jconsole来查看它的JVM配置 启动项目: 启动jconsole: 选中当前的项目连接: 选择不安全的连接 在idea中配置好JVM参数后再执行, 关闭jconsole中之前的连接,对重启后 阅读全文
posted @ 2023-05-10 18:22 张伯灵 阅读(36) 评论(0) 推荐(0) 编辑
mac安装jad反编译工具
摘要:下载镜像 https://varaneckas.com/jad/# 第一步:下载镜像 第二步:解压镜像包 第三步:把jad文件复制到自定义的目录下面 第四步:打开idea,在扩展工具中设置jad 运行结果: 大概意思是:不支持32位操作系统的软件,也就是说当前的jad是32位的,apple官方给出明 阅读全文
posted @ 2023-05-10 18:21 张伯灵 阅读(785) 评论(0) 推荐(0) 编辑
java中多级赋值
摘要:一、需求描述 我们开发过程中遇到过JSON字符串数据赋值到实体对象的属性,一个实体类中可能包含我们之前封装好的实体对象,比如Person.java里面包含Home home,Home.java有String Address,有自定义的Room room属性,然后需要一个这样的字符串给Person赋值 阅读全文
posted @ 2023-05-10 18:20 张伯灵 阅读(34) 评论(0) 推荐(0) 编辑
Servlet 与反射
摘要:一、Servlet 与反射 通过路径来执行对应的 Servlet 时,跟 /Fservlet 进行匹配,匹配成功后得到字符串 cn.itcast.web.servlet.Fservletk,在创建对象的时候就用到了反射. Tomcat通过class.forname("cn.itcast.web.se 阅读全文
posted @ 2023-05-10 18:19 张伯灵 阅读(9) 评论(0) 推荐(0) 编辑
java中的域对象
摘要:域对象总共有四种 PageContext; ServletReguest; HttpSession; SenvletContext; ServletContext 是 JavaWeb 四大域对象之一,从Tomcat启动时候出生,到Tomcat关闭死亡。 所有域对象都有存取数据的功能,因为域对象内部有 阅读全文
posted @ 2023-05-10 18:19 张伯灵 阅读(54) 评论(0) 推荐(0) 编辑
ServletContext 获取资源相关方法
摘要:一.获取真实路径 还可以使用 ServletContext 对象来获取 Web 应用下的资源,例如在 hello 应用的根目录下创建 a.txt 文件,现在想在 Servet 中获取这个资源,就可以使用ServletContext 来获取。 获取路径: A.txt: String realPath 阅读全文
posted @ 2023-05-10 18:19 张伯灵 阅读(23) 评论(0) 推荐(0) 编辑
Servlet获取类路径下的资源
摘要:一、获取类路径下的资源 获取类路径下资源,获取类险径资源, 类路径对一个 javalWeb 项目而言, 就是WEB-INF/classes 和 /WEB-INF/lib/每个jar包。 两种获取方式: Class ClassLoader 1.得到 classLoader ClassLoader cl 阅读全文
posted @ 2023-05-10 18:18 张伯灵 阅读(46) 评论(0) 推荐(0) 编辑
反射获取当前类的方法
摘要:通过反射的思想来获取类方法 Class c = this.getClass();//获得当前类对象 Method = null; try{ /** *methodName 要调用的方法名 *HttpServletRequest.class 方法参数类型 *HttpServletResponse.cl 阅读全文
posted @ 2023-05-10 18:16 张伯灵 阅读(33) 评论(0) 推荐(0) 编辑
javaweb过滤器
摘要:1. 什么是过滤器(Filte) 过滤器是JavaWeb三大组件之一。 2. 过滤器的作用 它会在一组资源(jsp,servles,.css,.html等)的前面执行。 它可以让请求得到目标资源,也可以不让请求得达到目标资源。 过滤器有拦截的能力。(对一组资源进行统一处理) 3. 过滤器如何编写 1 阅读全文
posted @ 2023-05-10 18:15 张伯灵 阅读(21) 评论(0) 推荐(0) 编辑
Javaweb多过滤器
摘要:多过滤器 FilterChian doFilter方法: 执行目标资源,或是执行下一个过滤器!(如果没有下一个过滤器,执行的是目标资源,如果有,那么执行下一个过滤器。) 关注我的公众号SpaceObj 领取idea系列激活码 阅读全文
posted @ 2023-05-10 18:15 张伯灵 阅读(14) 评论(0) 推荐(0) 编辑
filter的四种拦截方式
摘要:一、课程引入。 梁山伯打劫富人,并不打劫穷人,这叫盗亦有道,同拦截一样。 二、过滤器的四种拦截方式。 1、请求(直接请求)DISPATCHER 2、转发FORWARD 3、包含INCLUDE 4、错误ERROR <dispatcher>DISPATCHER, <dispatcher>FORWARD, 阅读全文
posted @ 2023-05-10 18:15 张伯灵 阅读(136) 评论(0) 推荐(0) 编辑
Spring循环依赖
摘要:在关于Spring的面试中,我们经常会被问到一个问题:Spring是如何解决循环依赖的问题的。 这个问题算是关于Spring的一个高频面试题,因为如果不刻意研读,相信即使读过源码,面试者也不一定能够一下子思考出个中奥秘。 本文主要针对这个问题,从源码的角度对其实现原理进行讲解。 过程演示 关于Spr 阅读全文
posted @ 2023-05-10 18:14 张伯灵 阅读(18) 评论(0) 推荐(0) 编辑
控制多个Filter的执行顺序
摘要:一、如何控制多个过滤器的执行顺序。 在的配置顺序最终决定了过滤器的执行顺序。 关注我的公众号SpaceObj 领取idea系列激活码 阅读全文
posted @ 2023-05-10 18:14 张伯灵 阅读(70) 评论(0) 推荐(0) 编辑
Filter 的应用场景、Filter 的目标资源、小结
摘要:一、过滤器的应用场景。 1、执行目标资源之前做预处理工作,例如设置编码,这种试通常都会放行 ,只是在目标资源执行之前做一些准备工作。 (批注:几乎所有的 Servlet 中都需要写request.setCharacterEndoing()可以把它写到一个Filter中。) (过滤器不会做拦截操作,只 阅读全文
posted @ 2023-05-10 18:13 张伯灵 阅读(72) 评论(0) 推荐(0) 编辑
分IP统计访问次数
摘要:| ip|count | |--|--| | 192.168.1.111 | 19 | | 192.168.2.78 | 89 | 统计工作需要在所有资源之前都执行,那么可以被放到Filter中了。 过滤器不打算做拦截操作,因为只是用来做统计。 用什么东西来装载统计数据。Map<String.int 阅读全文
posted @ 2023-05-10 18:13 张伯灵 阅读(32) 评论(0) 推荐(0) 编辑
粗粒度权限管理
摘要:1、粗粒度权限控制(拦截是否登录、拦截用户名admin权限) RBAC→基于角色的权限控制 ● tb_user ● tb_role ● tb_userrole ● tb_menu(增、删、改、查)->属于细粒度权限控制 ● tb_rolemenu 2、说明 我们给出三个页面: index.jsp、 阅读全文
posted @ 2023-05-10 18:12 张伯灵 阅读(18) 评论(0) 推荐(0) 编辑
spring获取客户端请求的ip地址
摘要:第一步:创建maven工程,引入需要的依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> 第二步:创建co 阅读全文
posted @ 2023-05-10 18:10 张伯灵 阅读(884) 评论(0) 推荐(0) 编辑
全站编码问题
摘要:1.解决全站字符乱码(POST和GET中文编码问题) ➢POST请求: requestsetCharacterEncoding("utf-8") ➢GET请求: String name = new String(reguest.getParameter("xx").getBytes("is0-885 阅读全文
posted @ 2023-05-10 18:10 张伯灵 阅读(20) 评论(0) 推荐(0) 编辑
手撸一个Spring容器
摘要:1、创建你的pojo对象 package cn.pojo; /** * @author zhr_java@163.com * @date 2022/4/17 22:03 */ public class UserDao { public void queryUserInfo(){ System.out 阅读全文
posted @ 2023-05-10 18:09 张伯灵 阅读(11) 评论(0) 推荐(0) 编辑
Listener-监听器概述以及生命周期监听器
摘要:1、事件源:三大域 ServletContext 生命周期监听: ServletContextListener,它有两个方法,一个在出生时调用,一个在死亡时调用; void contextInitialized(ServletContextEvent sce):创建 Servletcontext 时 阅读全文
posted @ 2023-05-10 18:09 张伯灵 阅读(46) 评论(0) 推荐(0) 编辑
监听器之属性监听器
摘要:通过实现 ServletContextAttributeListener 接口来举例: 实现三个常用的方法: 添加新的属性 void attributeAdded(ServletContextAttributeEvent event) 移除属性 void attributeRenoved(Servl 阅读全文
posted @ 2023-05-10 18:09 张伯灵 阅读(16) 评论(0) 推荐(0) 编辑
HttpSessionBindingListener用法
摘要:该接口是javaEE中的一个接口,主要是用来监听javaBean的。通过pojo包下面的类实现该接口,并实现该接口的两个方法: session中新增javabean的时候会调用: void valueBound(HttpSessionBindingEvent event) session中移除jav 阅读全文
posted @ 2023-05-10 18:08 张伯灵 阅读(35) 评论(0) 推荐(0) 编辑
session 的钝化和活化
摘要:一、什么是 session 的钝化和活化 假设我们在淘宝中用户过多的时候,虽然 session 没有下限,但 session 的数量就会不断增多。之后就会导致内存无法承受,此时就会有一些 session 长时间都没有活动。服务器启动时就会将这些很久没有活动的 session 放到硬盘上,让内存给空出 阅读全文
posted @ 2023-05-10 18:08 张伯灵 阅读(207) 评论(0) 推荐(0) 编辑
解决Safari使用谷歌搜索引擎需要二次确认
摘要:在使用谷歌搜索引擎的时候会弹出如下页面 怎么样才能一步到位,不去点击第二次? 第一步:设置」-「Safari」中将默认搜索引擎改为 Google 第二步:设置地区为香港 第三步:看效果 关注我的公众号SpaceObj 领取idea系列激活码 阅读全文
posted @ 2023-05-10 18:07 张伯灵 阅读(1081) 评论(0) 推荐(0) 编辑
手写springboot-starter
摘要:创建新的springboo项目demoStarter 配置pom文件,保证当前starter发布到maven仓库,方便其它项目引入该starter时候直接调用其中的工具类 创建一个demo类 在其它项目中引入自定义依赖### 配置发布的插件 <build> <plugins> <!--这个不能用sp 阅读全文
posted @ 2023-05-10 18:05 张伯灵 阅读(18) 评论(0) 推荐(0) 编辑
springboot+docker+MongoDB集群+动态扩容+高可用
摘要:环境要求 CentOS7 安装前必读 Linux 内核:官方建议 3.10 以上,3.8以上貌似也可。 注意:本文的命令使用的是 root 用户登录执行,不是 root 的话所有命令前面要加 sudo 1.查看当前的内核版本 uname -r 2.使用 root 权限更新 yum 包(生产环境中此步 阅读全文
posted @ 2023-05-10 18:05 张伯灵 阅读(173) 评论(0) 推荐(0) 编辑
springboot实现Redis哨兵集群
摘要:第一步下载Redis3.0以上的版本,因为3.0以下的版本对集群搭建不太友好 第二步解压 第三步安装 以上教程自行百度,下文是本文的重点 进入你安装Redis的目录,复制3个reids.conf配置文件 cp ./redis.conf ./redis6379.conf cp ./redis.conf 阅读全文
posted @ 2023-05-10 18:04 张伯灵 阅读(923) 评论(0) 推荐(0) 编辑
自定义Redis集群启动与停止脚本
摘要:首先在你指定的文件夹下面创建启动与停止的脚本 touch start-all.sh touch stop-all.sh 然后授权 chmod 777 start-all.sh chmod 777 stop-all.sh 编辑启动命令 vim ./start-all.sh ## 根据你的配置文件的路径 阅读全文
posted @ 2023-05-10 18:03 张伯灵 阅读(58) 评论(0) 推荐(0) 编辑
全排列+递归算法
摘要:package algorithm; /** * @author zhr_java@163.com * @date 2022/5/16 13:26 */ import java.util.*; public class Solution { public static void main(Strin 阅读全文
posted @ 2023-05-10 18:03 张伯灵 阅读(11) 评论(0) 推荐(0) 编辑
微信小程序自定义宫格
摘要:wxml <view class="con"> <!-- 两个为一组 --> <view class="item" wx:for="{{dataList}}" wx:for-index="idx" wx:if="{{idx%2==0}}"> <!-- 左边方框 --> <view class="it 阅读全文
posted @ 2023-05-10 18:02 张伯灵 阅读(77) 评论(0) 推荐(0) 编辑
uniapp官方组件点击item无效,解决方案
摘要:效果图 点击后打印item 上代码 <template> <view class="background-modal"> <view class="content"> <view class="item-background-style" v-for="(item,idx) in itemImage 阅读全文
posted @ 2023-05-10 18:02 张伯灵 阅读(196) 评论(0) 推荐(0) 编辑
医院误诊的赔偿标准有哪些?医院能赔多少钱?
摘要:医院误诊的赔偿标准有哪些?医院能赔多少钱? 医院时常会出现医生误诊的情况,这些都是医生在执业过程中由于自身的过失导致的。那么,医院误诊应该怎么赔偿患者?赔偿标准是多少?赔偿以具有哪些?本文为您详细解答。 《侵权责任法》相关规定: 五十七条 医务人员在诊疗活动中未尽到与当时的医疗水平相应的诊疗义务,造 阅读全文
posted @ 2023-05-10 18:01 张伯灵 阅读(70) 评论(0) 推荐(0) 编辑
一文搞懂高并发性能指标:QPS、TPS、RT、吞吐量
摘要:一、QPS,每秒查询 QPS:Queries Per Second意思是“每秒查询率”,是一台服务器每秒能够相应的查询次数,是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准。 互联网中,作为域名系统服务器的机器的性能经常用每秒查询率来衡量。 二、TPS,每秒事务 TPS:是Transac 阅读全文
posted @ 2023-05-10 18:01 张伯灵 阅读(218) 评论(0) 推荐(0) 编辑
uniapp访问的路径去掉 # ,访问出现404
摘要:一、我是在腾讯云服务器操作的 首先要把你的Apache服务器配置成https的 配置教程:https://cloud.tencent.com/document/product/400/35243 二、官方文档介绍的内容,要在uniapp的配置中设置history 三、官方文档还要配置服务器,但是不好 阅读全文
posted @ 2023-05-10 18:00 张伯灵 阅读(1196) 评论(0) 推荐(0) 编辑
Linux/Mac安装kafka,实现topic生产和监听
摘要:第一步:下载安装包 地址链接:https://dlcdn.apache.org/kafka/3.2.0/kafka_2.12-3.2.0.tgz 在Mac上面直接解压,Linux上用命令解压 第二步:配置kafka自带的zookeeper 修改kafka_2.12-3.2.0/config目录下的z 阅读全文
posted @ 2023-05-10 17:59 张伯灵 阅读(117) 评论(0) 推荐(0) 编辑
kafka管理界面
摘要:从git上下载:https://github.com/smartloli/kafka-eagle-bin/archive/v1.4.8.tar.gz(本例选择1.2.9版本) 解压(需要解压两次) cd /opt/module/ tar -zxf kafka-eagle-bin-1.4.8.tar. 阅读全文
posted @ 2023-05-10 17:58 张伯灵 阅读(762) 评论(0) 推荐(0) 编辑
uniapp H5获取不到cookie,小程序携带cookie请求数据
摘要:使用uni.request获取带有cookie的接口,但是响应中的header中没有 但是在网页上查看network的时候发现是有的 解决办法: 根据官方文档提示,在请求数据和响应数据中的cookie,uni.request可以开启自动识别,因为它默认是关闭的,所以要手动开启,缺点是只支持h5,小程 阅读全文
posted @ 2023-05-10 17:57 张伯灵 阅读(2686) 评论(0) 推荐(0) 编辑
uniapp-H5部署到服务器,获取不到GPS的经纬度
摘要:一、获取经纬度的接口 uni.getLocation({ type: 'gcj02', success: function (res) { console.log('当前位置的经度:' + res.longitude); console.log('当前位置的纬度:' + res.latitude); 阅读全文
posted @ 2023-05-10 17:56 张伯灵 阅读(59) 评论(0) 推荐(0) 编辑
Linux傻瓜式安装MySQL5.7
摘要:安装MySQL环境(numactl软件包) yum -y install numactl 下载压缩包 wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz 解压 ta 阅读全文
posted @ 2023-05-10 17:56 张伯灵 阅读(31) 评论(0) 推荐(0) 编辑
feign.RetryableException: Read timed out executing xxx
摘要:第一步引入相关依赖 <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-openfeign</artifactId> </dependency> <dependency> 阅读全文
posted @ 2023-05-10 17:55 张伯灵 阅读(513) 评论(0) 推荐(0) 编辑
Java接收时间字符戳格式转换
摘要:解决入参时时间格式的调整,参数配置如下注解 @DateTimeFormat(pattern="yyy-MM-dd HH:mm:ss") 解决出参时的时间格式调整,参数配置如下注解 @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss") 接收参数实体类前面添加如下注解 @ 阅读全文
posted @ 2023-05-10 17:54 张伯灵 阅读(102) 评论(0) 推荐(0) 编辑
并发业务处理
摘要:1、并发修改业务: 商品秒杀,保证剩余库存不能为负数 抢票业务,保证剩余的票不能为负数 占车位,保证剩余的车位不能为负数 解决办法:Redisson使用tryLock对资源进行尝试加锁,加锁失败则返回请求失败,加锁成功判断库存是否大于0,大于0则减库存,返回抢单成功,否则抢单失败;最后由于tryLo 阅读全文
posted @ 2023-05-10 17:53 张伯灵 阅读(29) 评论(0) 推荐(0) 编辑
删除排序数组中的重复项
摘要:不要使用额外的空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。 public static int removeDuplicates(int[] nums) { int p = 0; for(int i=1;i<nums.length;i++){ if(nums[p]! 阅读全文
posted @ 2023-05-10 17:52 张伯灵 阅读(9) 评论(0) 推荐(0) 编辑
feign.RetryableException: 连接超时 (Connection timed out) executing xxx FeignException.java:249
摘要:问题描述 在本地调用子服务接口好用,但是部署到服务器以后就会出现超时的问题 根本原因是你在配置注册中心nacos的时候,没有设置当前服务的公网ip,其它服务在调用的时候会默认调用服务器的内网ip,访问不到内网ip,就会导致超时 关注我的公众号SpaceObj 领取idea系列激活码 阅读全文
posted @ 2023-05-10 17:52 张伯灵 阅读(94) 评论(0) 推荐(0) 编辑
docker命令整理
摘要:查看全部容器: 第一种:docker ps -a 第二种:docker container ls -a 启动已停止的容器 docker start container 阅读全文
posted @ 2023-05-10 17:50 张伯灵 阅读(11) 评论(0) 推荐(0) 编辑
docker占用内存太多
摘要:问题及解决方法 开发中使用docker然后内存占用贼大,直接导致电脑卡死,找到了一个方法可以将内存降下来一点,以后还是要加内存的 方法 打开这个文件夹新建一个文件.wslconfig,这个文件是不存在的,需要新建 在文件中添加配置信息 # Settings apply across all Linu 阅读全文
posted @ 2023-05-10 17:50 张伯灵 阅读(264) 评论(0) 推荐(0) 编辑
Linux(CentOS Stream 9)安装MySQL8.0
摘要:mysql8下载链接 链接:https://pan.baidu.com/s/1yBCDbDYUmQWjcM1SdS7Xng 提取码:t37m 上传到服务器上并解压 cd /usr/local tar -xvf mysql-8.0.21-linux-glibc2.12-x86_64.tar.xz 解压 阅读全文
posted @ 2023-05-10 17:49 张伯灵 阅读(605) 评论(0) 推荐(1) 编辑
win11 无法安装VMware,安装 VMware后创建虚拟机蓝屏
摘要:win11 无法安装VMware 根本原因是 win11 不兼容 VMware16 解决办法是:切换到最高的版本 VMware17 VMware17链接地址:https://www.vmware.com/products/workstation-pro/workstation-pro-evaluat 阅读全文
posted @ 2023-05-10 17:48 张伯灵 阅读(278) 评论(0) 推荐(0) 编辑
No beans of ‘RedisConnectionFactory‘ type found.
摘要:问题复现,这个位置会报下划线的错误 解决办法 在resources目录下面创建META-INF文件夹,并创建spring.factories 把自定义配置的路径写进去 然后clean,然后install,启动项目试试 关注我的公众号SpaceObj 领取idea系列激活码 阅读全文
posted @ 2023-05-10 17:47 张伯灵 阅读(88) 评论(0) 推荐(0) 编辑
github 报错 Key is invalid. You must supply a key in OpenSSH public key format
摘要:原因:由于github官方提示 普通类型的ssh不安全,所以改成OpenSSH 解决办法 第一步:打开终端。粘贴下面的文本,替换为您的 GitHub 电子邮件地址。连续按回车键 ssh-keygen -t ed25519 -C "your_email@example.com" 第二步:将 SSH 密 阅读全文
posted @ 2023-05-10 17:46 张伯灵 阅读(678) 评论(0) 推荐(0) 编辑
git报错SSL certificate problem: self signed certificate in certificate chain
摘要:原因是本地git设置的不支持IP类型的仓库地址 解决办法:在控制台输入命令,然后回车,然后就可以拉代码 git config --global http.sslVerify false 关注我的公众号SpaceObj 领取idea系列激活码 阅读全文
posted @ 2023-05-10 17:45 张伯灵 阅读(160) 评论(0) 推荐(0) 编辑
SpringCloud alibaba使用Nacos读取变量报错 Could not resolve placeholder ‘xxx‘ in value “${xxx}“
摘要:前置条件 配置文件 spring: cloud: nacos: discovery: server-addr: 127.0.0.1:8848 config: # 服务器地址 server-addr: 127.0.0.1:8848 # 后缀名 file-extension: yml # 共享设置 sh 阅读全文
posted @ 2023-05-10 17:44 张伯灵 阅读(732) 评论(0) 推荐(0) 编辑
vue,一直报404
摘要:根本问题是代理过滤的函数没有配置对 问题复现 报404时候的配置 重新配置 关注我的公众号SpaceObj 领取idea系列激活码 阅读全文
posted @ 2023-05-10 17:44 张伯灵 阅读(5) 评论(0) 推荐(0) 编辑
message: NPM packages not found. Please confirm npm packages which need to build are bel
摘要:小程序引入vant组件出现问题:message: NPM packages not found. Please confirm npm packages which need to build are bel 问题复现:在小程序项目的根目录下面,用npm安装vant组件,然后开启 构建npm,会报这 阅读全文
posted @ 2023-05-10 17:42 张伯灵 阅读(4750) 评论(0) 推荐(0) 编辑
netty 实现websocket 携带参数建立连接
摘要:Netty提供了很好的WebSocket支持,可以通过添加WebSocketServerProtocolHandler实现暴露一个WebSocket接口。但是,如果需要在WebSocket的URI中添加参数queryString,例如/im/ws?w=221100234&t=99,则连接可能无法建立 阅读全文
posted @ 2023-05-10 17:40 张伯灵 阅读(2681) 评论(0) 推荐(0) 编辑
小程序底部出现横向滚动条
摘要:问题复现:在列表数据,上下滑动,加载数据的时候,底部出现横向滚动条 问题原因:由于设置啦width:100%的原因,导致内容溢出 .cell-group-background-style { width: 100%; height: auto; margin-top: 20rpx; margin-b 阅读全文
posted @ 2023-05-10 17:34 张伯灵 阅读(253) 评论(0) 推荐(0) 编辑
Linux关闭防火墙命令
摘要:**1:查看防火状态 systemctl status firewalld service iptables status 2:暂时关闭防火墙 systemctl stop firewalld service iptables stop 3:永久关闭防火墙 systemctl disable fir 阅读全文
posted @ 2023-05-10 17:32 张伯灵 阅读(2201) 评论(0) 推荐(0) 编辑
Java常用正则校验表
摘要:/** * 常用正则表达式字符串池 */ public interface RegexPool { /** * 英文字母 、数字和下划线 */ String GENERAL = "^\\w+$"; /** * 数字 */ String NUMBERS = "\\d+"; /** * 字母 */ St 阅读全文
posted @ 2023-05-10 17:31 张伯灵 阅读(297) 评论(0) 推荐(0) 编辑
MySQL 中删除重复数据只保留一条
摘要:数据模型 student表 查询结果 id name 1 永远 2 诸叶 3 诸叶 4 刹那 5 刹那 单字段示例 SELECT id,name FROM student WHERE name IN ( SELECT name FROM student GROUP BY name HAVING co 阅读全文
posted @ 2023-05-10 17:31 张伯灵 阅读(28) 评论(0) 推荐(0) 编辑
MySQL5.7 数据库恢复
摘要:问题:操作失误导致数据库删除,无备份 解决办法: 方案一、如果数据库开启binlog,通过binlog恢复 1、找到binglog文件,导出指定时间节点,指定数据库,生成mysql脚本到指定目录 mysqlbinlog --no-defaults --database=your_database_n 阅读全文
posted @ 2023-05-10 17:30 张伯灵 阅读(172) 评论(0) 推荐(0) 编辑
Mysql模糊查询之LIKE CONCAT(‘%‘,#{name},‘%‘)
摘要:(us.nick_name LIKE CONCAT('%',#{keyWord},'%') OR us.phone LIKE CONCAT('%',#{keyWord},'%')) 关注我的公众号SpaceObj 领取idea系列激活码 阅读全文
posted @ 2023-05-10 17:29 张伯灵 阅读(117) 评论(0) 推荐(0) 编辑
小程序IP属地获取
摘要:第三方接口准备 let GET_IP = "https://whois.pconline.com.cn/ipJson.jsp"; 数据处理 function getIpJson(res){ var ipString = res.trim(); var start = ipString.indexOf 阅读全文
posted @ 2023-05-10 17:28 张伯灵 阅读(678) 评论(0) 推荐(0) 编辑
Vue获取url网址参数的两种方法
摘要:方法一:在路由中配置了 path { path: '/detail/:id/', name: 'detail', component: detail, meta: { title: '详情' } } 获取参数 let id = this.$route.params.id 方法二:通过问号进行传参 h 阅读全文
posted @ 2023-05-10 17:23 张伯灵 阅读(1071) 评论(0) 推荐(0) 编辑