随笔分类 -  Java

摘要:单例模式及其思想本文包括以下几点↓ 结论:设计模式不是简单地将一个固定的代码框架套用到项目中,而是一种严谨的编程思想,旨在提供解决特定问题的经验和指导。 单例模式(Singleton Pattern) 意图 旨在确保类只有一个实例,并提供一个全局访问点以访问该实例。 适用性 当你希望系统中只有一个实例,并且需要从全 阅读全文
posted @ 2024-08-01 22:29 渊渟岳 阅读(240) 评论(0) 推荐(0)
摘要:显示所有中国城市需要多少个汉字?显示所有中国城市需要多少个汉字呢? 需要1226个汉字,看看我怎么知道的。 第一步:先找到中国的所有城市的名称 去哪里找到中国的所有城市的名称呢? 进入中国天气网:http://www.weather.com.cn/ 使用 F12 打开浏览器的调试面板,进入Network 页签, 然刷新页面,再过滤 阅读全文
posted @ 2024-01-04 22:37 渊渟岳 阅读(90) 评论(0) 推荐(0)
摘要:关于学习的一些建议本文的主要讲的内容如图👇 文末附有整个Java的学习路线、能力提升和学习建议的思维导图。 快过新年了!在过去的一年里,你们收获了什么呢?在未来的一年里,你们有什么新目标吗? 1.定目标 过去的我往往喜欢在新年里定下宏伟目标,迎来的却是年底猛烈的打击。目标过大往往难以实现,反而信心遭受打击,没有动力 阅读全文
posted @ 2023-01-18 17:55 渊渟岳 阅读(448) 评论(3) 推荐(1)
摘要:Java 同步锁ReentrantLock与抽象同步队列AQSAbstractQueuedSynchronizer 抽象同步队列,它是个模板类提供了许多以锁相关的操作,常说的AQS指的就是它。AQS继承了AbstractOwnableSynchronizer类,AOS用于保存线程对象,保存什么线程对象呢?保存锁被独占的线程对象。 抽象同步队列AQS除了实现序列 阅读全文
posted @ 2022-11-15 07:29 渊渟岳 阅读(469) 评论(0) 推荐(0)
摘要:本文主要包含的内容:可重入锁(ReedtrantLock)、公平锁、非公平锁、可重入性、同步队列、CAS等概念的理解 显式锁🔒 上一篇文章提到的synchronized关键字为隐式锁,会自动获取和自动释放的锁,而相对的显式锁则需要在编程时指明何时获取锁,何时释放锁。 通常,锁提供对共享资源的独占访 阅读全文
posted @ 2022-08-18 22:59 渊渟岳 阅读(785) 评论(1) 推荐(1)
摘要:Java中的线程安全与线程同步1.为什么需要线程同步 什么是线程安全:指在被多个线程访问时,程序可以持续进行正确的处理。 1.1.线程安全问题 案例:通过抢优惠例子说明线程安全问题 public class Demo1 { public static void main(String[] args) { // 简单模拟20人抢优 阅读全文
posted @ 2022-06-23 14:16 渊渟岳 阅读(409) 评论(0) 推荐(0)
摘要:Java并发编程之美简介 《Java并发编程之美》分为三部分,第一部分为Java 并发编程基础篇,主要讲解Java 并发编程的基础知识、线程有关的知识和并发编程中的其他相关概念,这些知识在高级篇都会有所使用,掌握了本篇的内容,就为学习高级篇奠定了基础;第二部分为Java 并发编程高级篇,讲解了Java 并发包中核心组件 阅读全文
posted @ 2022-06-07 10:14 渊渟岳 阅读(154) 评论(0) 推荐(0)
摘要:Java 线程常用操作继Java线程生命周期继续学习Java线程其他常用操作 线程的常用操作 设置线程名字:setName() 获取线程名称:getName() 线程唯一Id:getId() // 自定义线程名称 String threadName = "threadName"; // 构造方法方式 Thread thr 阅读全文
posted @ 2022-05-18 09:43 渊渟岳 阅读(708) 评论(0) 推荐(0)
摘要:Java线程状态(生命周期)--一篇入魂1.线程状态(生命周期) 一个线程在给定的时间点只能处于一种状态。 线程可以有如下6 种状态: New (新创建):未启动的线程;Runnable (可运行):可运行的线程,需要等待操作系统资源;Blocked (被阻塞):等待监视器锁而被阻塞的线程;Waiting (等待):等待唤醒状态,无限期地 阅读全文
posted @ 2022-05-10 10:19 渊渟岳 阅读(216) 评论(0) 推荐(0)
摘要:自己编写平滑加权轮询算法,实现反向代理集群服务的平滑分配学会了负载均衡算法,却没有用起来? 今天就来实战一遍,感受下平滑加权轮询算法的魅力。 通过Java语言,自己编写的平滑加权轮询算法,结合线程池和Socket 网络编程等,实现了反向代理集群服务的平滑分配,并通过降权/提权实现宕机服务的”剔除“和缓冲恢复。 1.理解全过程 1.1.概述 需要具备的知识 阅读全文
posted @ 2022-04-15 00:03 渊渟岳 阅读(768) 评论(2) 推荐(0)
摘要:Java实现平滑加权轮询算法--降权和提权上一篇讲了普通轮询、加权轮询的两种实现方式,重点讲了平滑加权轮询算法,并在文末留下了悬念:节点出现分配失败时降低有效权重值;成功时提高有效权重值(但不能大于weight值)。 本文在平滑加权轮询算法的基础上讲,还没弄懂的可以看上一篇文章。 现在来模拟实现:平滑加权轮询算法的降权和提权 1.两个关键点 阅读全文
posted @ 2022-04-12 23:06 渊渟岳 阅读(1152) 评论(0) 推荐(0)
摘要:Java实现负载均衡算法--轮询和加权轮询1.普通轮询算法 轮询(Round Robin,RR)是依次将用户的访问请求,按循环顺序分配到web服务节点上,从1开始到最后一台服务器节点结束,然后再开始新一轮的循环。这种算法简单,但是没有考虑到每台节点服务器的具体性能,请求分发往往不均衡。 代码实现: /** * 普通轮询算法 */ publi 阅读全文
posted @ 2022-04-12 00:04 渊渟岳 阅读(2767) 评论(0) 推荐(0)
摘要:最新漏洞:Spring Framework远程代码执行漏洞Spring Framework远程代码执行漏洞 发布时间 2022-03-31 漏洞等级 High CVE编号 CVE-2022-22965 影响范围:同时满足以下三个条件可确定受此漏洞影响: JDK 版本 >= 9 使用了 Spring 框架或衍生框架 项目中 Controller 参数接收实体 阅读全文
posted @ 2022-03-31 22:39 渊渟岳 阅读(2567) 评论(2) 推荐(1)
摘要:Java注解--一张图一案例掌握自定义注解1.概述 是什么:是对方法、类、参数、包、域以及变量等进行代码功能的增强或者修改程序的行为等操作。 应用 跟踪代码依赖性,实现替代配置文件功能在反射中使用Annotation,字段格式化(如:数据字段脱敏、日期格式)在编译时进行格式检查生成帮助文档 2.注解相关知识 元注解指的是所有注解都基于它们而 阅读全文
posted @ 2022-03-25 21:08 渊渟岳 阅读(331) 评论(0) 推荐(0)
摘要:Java反射详解篇--一篇入魂1.反射概述 Java程序在运行时操作类中的属性和方法的机制,称为反射机制。 一个关键点:运行时 一般我们在开发程序时,都知道自己具体用了什么类,直接创建使用即可。但当你写一些通用的功能时没办法在编写时知道具体的类型,并且程序跑起来还会有多种类型的可能,则需要在运行时动态的去调用某个类的属性和方法, 阅读全文
posted @ 2022-03-25 20:38 渊渟岳 阅读(595) 评论(0) 推荐(1)
摘要:JavaWeb之Servlet、拦截器、监听器及编程思想本文包含的内容有: Servlet的理解自定义Servlet、监听器和过滤器三者的一点点编程设计思想后续的学习 JavaWeb是Web开发的重要基础,对Servlet、监听器和过滤器等知识的掌握程度,将会影响到你后面学习SpringWeb框架难易程度。 先了解下我们在学习的东西是干嘛的 B/S模式 阅读全文
posted @ 2022-03-21 11:00 渊渟岳 阅读(498) 评论(1) 推荐(0)
摘要:java IO流体系--通识篇1.I/O流是什么 Java的I/O流是实现编程语言的输入/输出的基础能力,操作的对象有外部设备、存储设备、网络连接等等,是所有服务器端的编程语言都应该具备的基础能力。 I = Input(输入),输入是相对程序而言,既程序从外部设备、存储设备或网络连接中读取数据; O = Output(输出),输 阅读全文
posted @ 2022-03-13 21:26 渊渟岳 阅读(293) 评论(0) 推荐(0)
摘要:Java编程思想第四版(完整中文高清版)pdf​这是一本有独到、深入的见解的Java语言,以通俗易懂及小而直接的示例解释了一个个晦涩抽象的概念。本书共22章,包括操作符、控制执行流程、访问权限控制、复用类、多态、接口、通过异常处理错误、字符串、泛型、数组、容器深入研究、Java I/O系统、枚举类型、并发以及图形化用户界面等内容。这些丰富的内容 阅读全文
posted @ 2022-03-07 22:32 渊渟岳 阅读(2250) 评论(0) 推荐(0)
摘要:Java序列化流的奇妙之旅Java序列化流有何奇妙之处呢?通过一个个案例逐一感受序列化流。 !!!好戏在后头!!! 1.IO流读写文件 先从一个普通文件读写字符串开始讲起。 例子:输出字符串到文件,再从文件中读取字符串 在某一天灵感迸发:我可以把Java程序中的对象信息直接保存到普通的 txt 文件中吗?并且当我想使用它时, 阅读全文
posted @ 2022-03-07 22:24 渊渟岳 阅读(416) 评论(0) 推荐(0)
摘要:自己写了个Java RMI(远程方法调用)的实现案例自己简单写了个Java RMI(远程方法调用)的实现案例。 为了更好理解RMI(远程方法调用)、序列化的意义等等,花费三天多的时间肝了一个Java RMI的实现案例。 !!!高能预警!!! 代码量有点大,先附上了简图用于理解 整个过程分为两大步 第一步--注册过程:客户端通过指定路由获取注册中心指定 阅读全文
posted @ 2022-03-05 23:59 渊渟岳 阅读(580) 评论(1) 推荐(1)