![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
文章平均质量分 52
頋婗
这个作者很懒,什么都没留下…
展开
-
Java学习整理
Java学习整理原创 2023-02-23 15:49:50 · 67 阅读 · 0 评论 -
Java集合框架学习地址
集合框架源码学习原创 2022-05-31 10:26:57 · 111 阅读 · 0 评论 -
java中遇到break findIndex解析
在学习CopyonWriteArrayList的源码中,发现了这么一段代码:private boolean remove(Object o, Object[] snapshot, int index) { //加锁 final ReentrantLock lock = this.lock; lock.lock(); try { //获取数组 Object[] current = getArray原创 2021-10-28 15:59:13 · 308 阅读 · 0 评论 -
ArrayList源码学习---removeRange方法
为什么会单独提removeRange方法因为在查看ArrayList源码中,发现了removeRange方法,在此之前,工作中经常用到ArrayList,对于删除,好像只有remove方法,或者使用subList来进行删除,的确重来没有用过removeRange方法,首先先来看看removeRange方法的源码:protected void removeRange(int fromIndex, int toIndex) { modCount++; int numMoved原创 2021-10-09 11:39:19 · 493 阅读 · 0 评论 -
微服务-分布式事物解决方案
什么是事务事务是应用程序中一系列严密的操作,所有操作必须成功完成,否则在每个操作中所作的所有更改都会被撤消。也就是事务具有原子性,一个事务中的一系列的操作要么全部成功,要么一个都不做。提到事物这里就必须得提事务的四个特性什么是ACID事务的定义和实现一直随着数据管理的发展在演进,当计算机越来越强大,它们就能够被用来管理越来越多数据,最终,多个用户可以在一台计算机上共享数据,这就导致了一个问题,当一个用户修改了数据而另外一个还在使用旧数据进行计算过程中,这里就需要一些机制来保证这种情况不会发生。AC原创 2021-09-18 14:41:16 · 243 阅读 · 0 评论 -
数据结构和算法学习:链表
链表链表是有序的列表,但是它在内存中是存储如下链表是以节点的方式来存储,是链式存储每个节点包含 data 域, next 域:指向下一个节点.如图:发现链表的各个节点不一定是连续存储.链表分带头节点的链表和没有头节点的链表,根据实际的需求来确定单链表单链表(带头结点) 逻辑结构示意图如下代码实现class SingleLinkedList{ //设置头结点 HeroNode heroNode = new HeroNode(0); //添加节点到单向链表原创 2020-07-10 16:11:52 · 108 阅读 · 0 评论 -
数据结构和算法学习:队列(顺序)
队列队列是一个有序列表,可以用数组或是链表来实现。遵循先入先出的原则。即:先存入队列的数据,要先取出。后存入的要后取出示意图:(使用数组模拟队列示意图)数组模拟队列队列本身是有序列表,若使用数组的结构来存储队列的数据,则队列数组的声明如下图, 其中 maxSize 是该队列的最大容量。因为队列的输出、输入是分别从前后端来处理,因此需要两个变量 front及 rear分别记录队列前后端的下标,front 会随着数据输出而改变,而 rear则是随着数据输入而改变,如图所示:当我们原创 2020-07-10 15:05:10 · 222 阅读 · 0 评论 -
数据结构和算法学习:稀疏数组
稀疏数组稀疏数组可以看做是普通数组的压缩,但是这里说的普通数组是值无效数据量远大于有效数据量的数组意义一个二维数组中有大量位置是空着的,这样存储会浪费很多内存空间,这时可以采用稀疏数组来存储数据,大量减少内存空间。二维数组 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0原创 2020-07-10 11:28:24 · 105 阅读 · 0 评论 -
SpringBoot注解分析
SpringBoot注解分析常用注解@Component放在类上,把普通类实例化到spring容器中。大多数注解都基于这个注解@Target(ElementType.TYPE)@Retention(RetentionPolicy.RUNTIME)@Documented@Indexedpublic @interface Component { /** * The value may indicate a suggestion for a logical component name,原创 2020-07-01 15:32:17 · 525 阅读 · 0 评论 -
Spring Data Jpa自定义方法关键字
Spring Data Jpa自定义方法关键字关键字方法名举例对应的SQLAndfindByNameAndAgewhere name = ? and age = ?OrfindByNameOrAgewhere name = ? or age = ?IsfindByNameIswhere name = ?EqualsfindByNameEqua...原创 2020-04-23 15:25:19 · 329 阅读 · 0 评论 -
SpringCloud学习
SpringCloud学习微服务介绍SpringCloud介绍分布式微服务架构下的一站式解决方案,是各个微服务架构落地技术的集合体,俗称微服务栈解决方案。SpringCloud和SpringBoot的关系一个偏宏观,一偏微观boot就是医院里面一个一个的科室,而Cloud就是把boot组合起来的提供对外的综合医院。springboot可以单独使用,它不依赖于springcloud...原创 2020-03-07 21:29:50 · 143 阅读 · 1 评论 -
线程池的核心参数以及执行流程
线程池线程池类型newFixedThreadPool创建一个可重用固定线程数的线程池,以共享的无界队列方式来运行这些线程。在任意点,在大多数 nThreads 线程会处于处理任务的活动状态。如果在所有线程处于活动状态时提交附加任务,则在有可用线程之前,附加任务将在队列中等待。如果在关闭前的执行期间由于失败而导致任何线程终止,那么一个新线程将代替它执行后续的任务(如果需要)。在某个线程被...原创 2020-02-24 20:51:39 · 2237 阅读 · 4 评论 -
RabbitMQ拓展
RabbitMQ拓展TTL队列/消息TTL是Time To Live的缩写, 也就是生存时间RabbitMQ支持消息的过期时间, 在消息发送时可以进行指定RabbitMQ支持队列的过期时间, 从消息入队列开始计算, 只要超过了队列的超时时间配置, 那么消息会自动清除生产者import com.rabbitmq.client.Channel;import com.rabbitmq....原创 2020-02-12 19:55:36 · 247 阅读 · 0 评论 -
SpringMVC流程
SpringMVC执行流程SpringMVC介绍Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。使用 Spring 可插入的 MVC 架构,从而在使用Spring进行WEB开发时,可以选择使用Spring的Spring MVC框架或集成其他MVC开发框架。Sp...原创 2020-02-09 16:10:18 · 102 阅读 · 0 评论 -
HashMap实现原理
HashMap实现原理JDK1.7HashMap(提一下,后面就不提了)JDK1.7HashMap底层是由数组加链表的形式组成模型JDK1.8HashMapJDK1.8HashMap底层是由数组加链表以及红黑树实现的模型HashMap常见的变量默认大小static final int DEFAULT_INITIAL_CAPACITY = 1 << 4;HashM...原创 2020-02-08 22:21:13 · 131 阅读 · 0 评论 -
Java操作RabbitMQ队列
Java操作RabbitMQ队列环境配置maven配置 <dependencies> <!-- 引入队列依赖 --> <dependency> <groupId>com.rabbitmq</groupId> <artifactId>amqp...原创 2020-02-07 16:21:38 · 762 阅读 · 0 评论