![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java
文章平均质量分 76
励志做最顶级的全栈工程师
全栈切图仔
这个作者很懒,什么都没留下…
展开
-
【Java 中间件】1.Zookeeper 集群 以及选举策略
什么是zookeeper呢, 使用官方的话是分布式远程协调服务那为什么要有zookeeper呢?到底是解决了什么问题呢???上述是我们分布式部署架构. 我们会把会员系统等服务独立部署. 但是很少能有服务独立完成工作的, 所以肯定会牵扯服务之间的相互调用.但是依据上述服务架构而言的话, 肯定会在服务内部写死IP/ 域名. 服务之间都是正常运行还好,一旦牵扯服务宕机的话, 一是: 必须手动做出反应 二是: 启动一个新的服务,牵扯到的其余服务都必须手动修改IP/ 域名等。原创 2023-04-07 23:33:10 · 561 阅读 · 0 评论 -
【MyBatis 深入学习】MyBatis缓存级别
缓存,顾名思义其实就是就是为了提高查询效率。MyBatis的缓存同样是如此。那么接下来让我们看下MyBatis缓存到底是怎么回事。点击此连接查看Demo 源码以上就是对MyBatis中 一级二级缓存的认识,尤其是一级缓存,有效的利用缓存可以减少跟数据库IO 的操作,提高效率。原创 2023-03-18 15:09:51 · 485 阅读 · 0 评论 -
保证原子性的几种方式,你都知道吗???
今天分析下几种保证原子性的方式。Synchronized/ lock/ CAS/ ThreadLocal原创 2023-01-05 11:06:04 · 1385 阅读 · 0 评论 -
【MyBatis 深入学习】MyBatis中${} 以及#{} 不同
从今天开始 让我们了解下关于MyBatis的使用细节,以及底层原理。同时 我们也会从JDBC的发展史来说。JDBC(Java DataBase Connectivity, Java数据库连接) ,是一种用于执行SQL语句的Java API,为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成简单来说就是Java 实现了一套关于JDBC相关接口,可以理解为是JDBC规范。数据库厂商为了能在Java中使用其语言,必须实现这套规范。大致过程如下图:其实我们平常使用的jar包。原创 2023-03-14 14:42:04 · 259 阅读 · 0 评论 -
【Spring 深入学习】过滤器详解
Jsp, Servlet, 静态图片文件或静态 html 文件等进行拦截,从而实现一些特殊的功能。例如实现URL级别的权限访问控制、过滤敏感词汇、压缩响应信息等一些高级功能 处理编码。原创 2023-03-13 16:07:58 · 1130 阅读 · 0 评论 -
【Spring 深入学习】SpringBoot配置方式 以及启动原理
在Spring中是组件轻量化,配置重量化。其实我们通过配置springmvc项目就可以看出来。不管是还是web.xml都特别多的配置。但是每个项目的配置都是大同小异。所以从另一个层面来说SpringBoot无xml配置的spring-mvc启动器基于依赖传递的特性,将很多共同的包都打包到一起了。然后我们只要引入一个启动器包,就可以将需要的所有的包都引入启动器文件特征Spring Boot的启动器实际上就是一个依赖。原创 2023-03-11 22:18:16 · 306 阅读 · 0 评论 -
【Spring 深入学习】AOP的前世今生之后续
上篇文章【Spring 深入学习】AOP的前世今生之代理模式我们讲述了代理模式。而我们今天的主人公AOP就是基于代理模式实现的,所以我们今天会简单学习下AOP是面向切面编程,一般可以帮助我们在不修改现有代码的情况下,对程序的功能进行拓展,往往用于实现 日志处理,权限控制,性能检测,事务控制等。原创 2023-03-11 15:07:19 · 307 阅读 · 0 评论 -
【Spring 深入学习】AOP的前世今生之代理模式
什么是代理模式呢???在不修改原有代码 或是 无法修改原有代码的情况下,增强对象功能,替代原来的对象去完成功能,从而打开了拓展的目的。先给大家看下 JavaScript中实现方式直接代理函数,在调用之前之后做一些事情接下来我们看下Java中是如何实现的???JDK 动态代理JDK Proxy 动态代理面向接口的动态代理 一定要有接口和实现类的存在 代理对象增强的是实现类 在实现接口的方法重写的方法生成的代理对象只能转换成 接口的不能转换成 被代理类gclib 动态代理面向父类进行动态代理。原创 2023-03-10 14:04:16 · 434 阅读 · 0 评论 -
【Spring 深入学习】配置DI 以及IOC的多种方式
如果通过xml 以及注解的方式将Spring 自动装配原创 2023-03-08 21:10:35 · 361 阅读 · 0 评论 -
【JVM 由浅入深】JVM入门
今天我们对JVM 进行入门讲解,让我们了解下什么是JVM,是专门为Java服务的一款产品吗???好了废话不多说了,让我们开始吧。原创 2023-03-06 11:23:11 · 279 阅读 · 0 评论 -
【Java 面试合集】打印一个int整数的32位表示
嗨,大家好【Java 面试合集】又来了,今天给大家分享的主题是打印一个int整数的32位表示不知道看到这篇文章的各位是否都知道,一个int类型的表示方式就是32位呢???为什么呢其实很简单啊,因为一个int的占4个字节, 而每个字节占8个比特位,所以就是32位了。410等,那么我们如果知道用32位怎么表示呢i >= 0;} }原创 2023-02-27 11:33:41 · 557 阅读 · 0 评论 -
【Java 面试合集】Java类中定义一个无用空参构造方法的作用
嗨,大家好【Java 面试合集】又来了,今天我们分享的内容是基础中的基础,那就是Java类中定义一个无用空参构造方法的作用. 好了,废话不多说了,我们开始吧。原创 2023-02-24 22:14:23 · 741 阅读 · 0 评论 -
【Java 面试合集】String, StringBuffer和StringBuilder 之间的不同
嗨,大家好【Java 面试合集】又来了,今天我们分享的主题是String, StringBuffer和StringBuilder 之间的不同。大家别看这个知识点不难,但是里面的细知识很多哦,好了废话不多说了,我们开始吧。原创 2023-02-23 16:48:22 · 266 阅读 · 0 评论 -
【Java 面试合集】接口以及抽象类
嗨,【Java 面试合集】又来了,今天给大家分享的内容是接口以及抽象类。一看这个概念很多人都知道,但是方方面面的细节不一定知道哦,今天我们就从方方面面的细节来讲讲。原创 2023-02-22 14:27:02 · 854 阅读 · 0 评论 -
【Java 面试合集】final 以及finally 不同
嗨,大家好【Java 面试合集】又来了。今天给大家分享的主题是final 以及finally 不同很简单,但是确实很细节哦,好了废话不多说,让我们开始吧其实final以及finally除了书写相似外,毛关系没有。原创 2023-02-21 12:47:10 · 339 阅读 · 0 评论 -
【Java 面试合集】内存中为什么要区分栈和堆
嗨,大家好Java 面试合集又来了,今天我们分享的主题很大众化以及普通。无论是Java 语言本身还是别的语言都会有所涉及,但是今天我们从Java角度来讲下。原创 2023-02-19 20:44:20 · 507 阅读 · 0 评论 -
【Java 面试合集】包装类的缓存问题
嗨,大家好,【Java 面试合集】每日一题又来了。包装类的缓存问题。我们下面的案例以Integer为例。原创 2023-02-17 22:04:00 · 717 阅读 · 0 评论 -
【Java 面试合集】HashMap中为什么引入红黑树,而不是AVL树呢
开始学习这个知识点之前我们需要知道,在JDK1.8 以及之前,针对HashMap有什么不同。JDK 1.7的时候,HashMap的底层实现是数组 + 链表JDK1.8的时候,HashMap的底层实现是数组 + 链表 + 红黑树我们要思考一个问题,为什么要从链表转为红黑树呢。首先先让我们了解下链表有什么不好???原创 2023-02-15 22:25:28 · 1106 阅读 · 0 评论 -
【Java 面试合集】HashMap 在1.8做了哪些优化
嗨,大家好,我又来了。今天分享的面试合集是HashMap 在1.8做了哪些优化。HashMap是面试高频题,我也会从源码的角度逐一解析。有什么不对的,希望大家及时指正。原创 2023-02-14 22:19:27 · 452 阅读 · 0 评论 -
【Java基础源码解析系列】HashMap 正解
HashMap 实现原理 以及扩容机制。 扩容阀值以及 加载因子原创 2023-01-25 17:04:23 · 1000 阅读 · 0 评论 -
【Java基础源码解析系列】ArrayList 实现原理 以及扩容原理
今天的分享主要针对 ArrayList的扩容机制 以及整个add的原理。接下来会分析LinkedList, hashMap等,敬请期待…今天从Java底层分析下ArrayList实现原理,还有ArrayList 的扩容机制。集合有参构造方法的实现方式。有参构造方法的实现方式。原创 2023-01-22 20:58:38 · 133 阅读 · 0 评论 -
【Java基础源码解析系列】深入了解延迟队列 DelayQueue
延迟队列核心:通过优先级队列来判断延迟时间大小,将延迟小的元素会放到堆顶。所以添加顺序 不一定等于 输出顺序。跟延迟的时间的大小有很大关系。好了,就分析到这里了,不敢说一一明白但是大体的源码意思是透彻了。如果大家有什么新的看法,可以通过评论区告诉我哦。原创 2023-01-14 14:44:44 · 626 阅读 · 0 评论 -
【Java基础源码解析系列】深入了解 LinkedBlockingQueue阻塞队列,分析扩容机制以及小顶堆原理
深入了解优先级队列。 以及在队列中是如何扩容, 以及小顶堆的本质实现原创 2023-01-14 13:36:28 · 437 阅读 · 0 评论 -
【Java基础源码解析系列】深入了解 LinkedBlockingQueue阻塞队列
class Node表示队列中的每个元素,因为是链表结构,所以每个节点都是Nodecapacity;表示设置链表的最大长度count表示累计的链表的长度head表示链表的头节点last表示链表ode尾节点takeLock消费者使用锁notEmpty消费者挂起线程的conditionputLock生产者使用的锁notFull生产者挂起线程的condition。原创 2023-01-12 21:51:51 · 700 阅读 · 0 评论 -
深入了解ArrayBlockingQueue 阻塞队列
ArrayBlockingQueue 阻塞队列的 Java底层实现原创 2023-01-11 22:39:09 · 1343 阅读 · 0 评论 -
【Java基础源码解析系列】深入ReentrantLock锁
AQS就是AbstractQueuedSynchronizer抽象类,AQS其实就是JUC包下的一个基类,JUC下的很多内容都是基于AQS实现了部分功能,比如ReentrantLock,ThreadPoolExecutor,阻塞队列,CountDownLatch,Semaphore,CyclicBarrier等等都是基于AQS实现首先AQS中提供了一个由volatile修饰,并且采用CAS方式修改的int类型的state变量。原创 2023-01-10 13:53:04 · 443 阅读 · 0 评论 -
锁的分类,以及锁升级原理
锁的分类。类锁/ 对象锁。 锁的升级原创 2023-01-06 18:06:55 · 604 阅读 · 0 评论 -
解决可见性的方案有哪几种,你都知道吗???
如何处理线程的可见性呢??? volatile/ synchronized/ reentrantLock原创 2023-01-05 18:36:21 · 679 阅读 · 0 评论 -
原子性 以及悲观锁, 乐观锁
详细的说明了什么是“原子性” 以及我们平常遇到的悲观锁,以及乐观锁。 以及jvm中的两种锁原创 2023-01-02 10:39:53 · 457 阅读 · 0 评论 -
如何优雅的中断线程
讲解interrupt API 以及中断线程的几种方式原创 2022-12-30 23:51:37 · 663 阅读 · 0 评论 -
线程中的sleep, yield, join
今天以具体实例的方法来详细记录下实战中的sleep,yield,join。到底是什么意思,应该怎么用呢???原创 2022-12-30 18:24:22 · 206 阅读 · 0 评论 -
线程,进程以及Java中创建线程的多种方式
其实不管是程序/ 进程/ 线程都是基于操作系统而言的。对于操作系统而言的话,程序就是一个后缀为exe或是msi的可执行文件,当我们点击执行文件的时候,会将文件内容加载到操作系统的内存中,同时也是开辟一块空间来保存执行文件程序好比一个js文件,操作系统好比是浏览器。一个执行以及被执行的关系进度是资源分配的最小单位其实并不是把执行文件加载到内存总就完事了,而是会安排进程进行资源分配。比如分配端口号,网络等。所以进程是资源分配的最小单位线程是调度执行的最小单位。原创 2022-12-30 15:58:52 · 405 阅读 · 0 评论 -
Springboot中的logback 日志
详细列举出了logback的配置信息, 以及使用数据库来保存日志原创 2022-12-22 09:52:30 · 115 阅读 · 0 评论 -
初始SpringBoot
1. 认识什么叫Springboot 以及什么叫启动器。 2. springboot 中不同的继承方式原创 2022-12-21 21:36:50 · 49 阅读 · 0 评论 -
基于SpringMVC 实现的上传/下载的Demo
基于SpringMVC 来实现文件的上传以及下载 案例原创 2022-12-20 21:11:34 · 148 阅读 · 0 评论 -
从0到1的Spring MVC过程-续集③-从0到1搭建Spring mvc项目
以上的内容就是从0开始搭建一个Spring mvc项目。不需要牢记只需要了解大致配置就可以了。毕竟一个项目配置过一次后,再也不需要修改配置了。所以知道怎么配置即可。也希望大家多提见多多反馈。原创 2022-12-19 16:02:15 · 125 阅读 · 0 评论 -
从0到1的Spring MVC过程-续集②
今天以整理知识点的角度来梳理下整个SpringMVC的过程。以及过程中的注意点。原创 2022-12-19 13:43:13 · 58 阅读 · 0 评论 -
从0到1的Spring MVC过程-正文①
今天以整理知识点的角度来梳理下整个SpringMVC的过程。以及过程中的注意点。原创 2022-12-16 21:52:18 · 66 阅读 · 0 评论