自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(59)
  • 资源 (3)
  • 收藏
  • 关注

原创 文章汇总目录

文章目录SpringBoot源码SpringBoot源码如何搭建自己的SpringBoot源码调试环境? SpringBoot源码(一)如何分析SpringBoot源码模块及结构? SpringBoot源码(二)助力SpringBoot自动配置的条件注解原理揭秘 SpringBoot源码(三)SpringBoot是如何实现自动配置的? SpringBoot源码(四)SpringBoot的配置属性值是如何绑定的? SpringBoot源码(五)SpringBoot内置的各种Starter是怎.

2021-08-06 00:19:33 108

原创 netty实战

简介netty 核心组件NIO简单的 netty 应用程序Echo 服务器ChannelHandler 和业务逻辑引导服务器Echo 客户端ChannelHandler引导客户端构建和运行 Echo 服务器和客户端Netty 的组件和设计Channel 接口EventLoop 接口ChannelFuture 接口ChannelHandlerChannelPipelineChannelInitializer引导传输传输迁移传输 A...

2021-08-27 11:29:17 945

原创 SpringBoot实战

文章目录Spring Boot基础特点Spring Boot核心基本配置外部配置日志配置Profile配置Spring Boot的Web开发Thymeleaf 模板引擎Thymeleaf 基础知识与 Spring MVC 集成Spring Boot 的 Thymeleaf 支持实战Web 相关配置Spring Boot 提供的自动配置实现自己的 MVC 配置注册 Servlet、Filter、ListenerTomcat配置配置 Tomcat替换 TomcatSpring Boot 的数据访问Docker.

2021-08-27 11:28:40 2225

原创 SpringCloud微服务实战

文章目录基础知识Spring Cloud Eureka服务注册与发现代码实例高可用注册中心Spring Cloud RibbonRestTemplate代码实例Spring Cloud Hystrix代码实例Spring Cloud Feign负载均衡功能服务降级功能Spring Cloud Zuul路由规则访问前缀header过滤重定向查看路由信息过滤器过滤器类型自定义过滤器禁用过滤器Ribbon和Hystrix的支持常用配置Spring Cloud Gateway配置路由Route Predicate.

2021-08-27 11:27:50 1028 1

原创 SpringMVC

文章目录简介Spring MVC处理流程Spring MVC和Struts的区别Spring MVC环境搭建处理器映射器和适配器非注解的处理器映射器和适配器注解的处理器映射器和适配器前端控制器对静态资源的处理视图解析器AbstractCachingViewResolverUrlBasedViewResolverInternalResourceViewResolverXmlViewResolverBeanNameViewResolverResourceBundleViewResolverFreeMarker.

2021-08-27 11:26:49 192

原创 spring实战

文章目录Spring的核心装配bean自动装配bean验证自动装配通过Java代码装配bean通过xml装配bean构造器注入属性注入混合配置在JavaConfig中引用xml配置在xml配置中引用JavaConfig高级装配自动装配的歧义性标识首选的bean限定自动装配的bean创建自定义的限定符bean的作用域运行时值注入注入外部的值使用Spring表达式语言进行装配面向切面AOP术语Spring对aop的支持通过切面选择连接点使用注解创建切面定义切面创建环绕通知处理通知中的参数通过注解引入新功能在x.

2021-08-27 11:25:30 176

原创 spring总结

文章目录AOP静态代理动态代理Spring AOP动态代理实现原理IOCioc容器BeanDefinition容器初始化Bean生命周期Aware接口BeanFactory和FactoryBeanFactoryBean使用bean注入容器的方法自动装配@Autowired和@Resource声明Bean注解@Bean和@Componentbean的作用域设计模式事务@Transactional事务传播行为循环依赖初始化三级缓存Spring启动过程Spring Bean线程安全AOP面向切面编程,作为.

2021-08-27 11:24:20 114

原创 深入浅出Mybatis技术原理与实战

文章目录Mybatis简介传统的JDBC编程Hibernate与MybatisMybatis入门SqlSessionFactorySqlSession映射器MapperMybatis组件的生命周期配置propertiestypeAliasestypeHandler自定义typeHandler枚举类型typeHandler自定义枚举类typeHandlerobjectFactoryenvironments数据库事务映射器select元素自动映射传递多个参数使用resultMap映射结果集insert元素主键.

2021-08-27 11:22:10 450

原创 java并发

文章目录线程池线程池原理线程池大小线程池参数设置关闭线程池executor框架简介ThreadPoolExecutor实例Runnable和Callable的区别Future和FutureTaskexecute()和submit()常用的线程池FixedThreadPoolSingleThreadExecutorCachedThreadPoolScheduledThreadPoolExecutor编码规范JMM线程间通信volatilesynchronized等待通知机制创建线程的方法锁synchroni.

2021-08-23 20:41:19 199

原创 java集合

文章目录StackQueueMapHashMaphash算法resizeput解决哈希冲突方法红黑树HashMap和HashTableLinkedHashMap底层实现ConcurrentHashMap 和 Hashtabletreemap底层SetIteratorListIterator并发容器ConcurrentHashMapput扩容CopyOnWriteConcurrentLinkedQueue阻塞队列方法JDK提供的阻塞队列原理StackStack继承自 Vector 类,peek()、p.

2021-08-23 20:40:04 101

原创 java编程思想

文章目录基础知识数据类型整型浮点类型char 类型boolean 类型大数值操作符注释文档代码规范控制执行流程switchbreak 和 continue 实现 goto初始化和清理成员初始化可变参数列表访问权限控制访问权限修饰词复用类继承语法final 关键字初始化及类的加载继承与初始化多态缺陷:“覆盖”私有方法域和静态方法构造器和多态构造器的调用顺序接口抽象类接口的域内部类.this 和 .new匿名内部类工厂方法嵌套类为什么需要内部类局部内部类内部类标识符容器添加一组元素迭代器LinkedListS.

2021-08-23 20:38:52 1040

原创 java web

文章目录servletjspTomcattomcat和netty区别跨域同源策略CSRF攻击statement和prepareStatementservletservlet接口定义的是一套处理网络请求的规范。servlet运行在服务端,由servlet容器管理,用于生成动态的内容(早期的web技术主要用来浏览静态页面)。Servlet是什么?运行在Servlet容器(如Tomcat)中的Java类没有main方法,不能独立运行,必须被部署到Servlet容器中,由容器来实例化和调用Servl.

2021-08-23 20:35:23 78

原创 Java8

文章目录函数式编程Lambda 表达式函数式接口内置的函数式接口Predicate 断言ComparatorConsumerStreamFilter 过滤Sorted 排序Map 转换Match 匹配Count 计数ReduceflatMapParallel-Streams 并行流Map 集合函数式编程面向对象编程:面向对象的语言,一切皆对象,如果想要调用一个函数,函数必须属于一个类或对象,然后在使用类或对象进行调用。面向对象编程会多写很多可能是重复的代码行。 Runnable ru.

2021-08-23 20:34:34 90

原创 Java并发编程

文章目录共享对象非原子的64位操作this 引用逸出安全的对象构造过程ThreadLocal容器间接的迭代操作ConcurrentHashMap同步工具类信号量缓存系统任务执行Executor 框架延迟任务携带结果的 Callable 和 Future为任务设置时限取消与关闭任务取消阻塞和中断共享对象非原子的64位操作在多线程程序使用共享且可变的64位数据类型的变量是不安全的。this 引用逸出参考自:this 引用逸出实例化 ThisEscape 对象时,会调用 source 的 regi.

2021-08-23 20:33:20 128

原创 JVM虚拟机

文章目录程序计数器虚拟机栈本地方法栈堆方法区永久代元空间运行时常量池直接内存对象的访问定位类文件结构类的生命周期类加载的过程加载验证准备解析初始化main方法执行过程对象创建过程双亲委派模型堆内存分配策略对象优先在 eden 区分配大对象直接进入老年代长期存活的对象将进入老年代对象死亡引用计数法可达性分析可作为GC Roots的对象引用强引用软引用弱引用虚引用常量回收类的卸载gc分类堆结构垃圾回收算法分类收集算法记忆集标记清除算法复制清除算法标记整理算法垃圾回收器Serial 收集器ParNew 收集器P.

2021-08-23 20:31:42 150

原创 Java关键字

文章目录static静态变量静态方法静态代码块静态内部类finalthissuperstaticstatic可以用来修饰类的成员方法、类的成员变量。静态变量static变量也称作静态变量,静态变量和非静态变量的区别是:静态变量被所有的对象所共享,在内存中只有一个副本,它当且仅当在类初次加载时会被初始化。而非静态变量是对象所拥有的,在创建对象的时候被初始化,存在多个副本,各个对象拥有的副本互不影响。以下例子,age为非静态变量,则p1打印结果是:Name:zhangsan, Age:10;若ag.

2021-08-23 20:28:47 164 2

原创 Java基础

文章目录Java概述Java的特点JKD和JREJDKJREJava基础语法基本数据类型包装类型包装类缓存StringString拼接关键字static静态变量静态方法静态代码块静态内部类finalobject常用方法toStringequalshashCodeclone浅拷贝深拷贝getClassequals()和hashcode()的关系==和equals区别面向对象面向对象特性多态怎么实现类与对象属性方法普通方法构造方法方法重载方法重写初始化顺序接口和抽象类抽象类接口接口与抽象类区别反射Class类.

2021-08-23 20:27:42 339

原创 Spring 初级面试题

文章目录一. 什么是 IOC二. 什么是 AOP三. 什么是 BeanDefinition四. BeanFactory 和 FactoryBean五. 后置处理器(PostProcessor)六. spring 的创建流程七. Bean 的生命周期八. 循环依赖九. spring 事务原理十一. 事务失效十二. 哪些设计模式十三. spring 整合 mybatis 原理一. 什么是 IOC什么是 IOC: IOC 是一种设计思想, 对象的管理方式由程序员控制变成了由框架控制, 从创建到销毁都是框架.

2021-08-17 23:06:04 231

原创 SpringBoot 实战 (二) | 第一个 SpringBoot 工程详解

文章目录前言第一个 SpringBoot 工程SpringBoot 项目目录详解前言今天接着前文给大家带来了第一个 SpringBoot 工程的详解。第一个 SpringBoot 工程前文已经说过了 SpringBoot 工程的创建,这里不再赘述。学过编程的都知道,学习一门新语言的第一个项目肯定是 Hello World 。那这里也不例外,我们先创建一个非常简单的 Hello World 工程。给大家讲解 SpringBoot 的项目目录。创建信息如下:由于本文重点旨在讲解 SpringB.

2021-08-12 22:59:27 216

原创 SpringBoot 实战 (一) | 如何使用 IDEA 构建 Spring Boot 工程

文章目录01 前言02 什么是 SpringBoot ?03 如何使用 IDEA 构建 SpringBoot 工程?01 前言本文我们将介绍嵌入 Intellij IDEA 中的 Spring Initializr 工具,它同 Web 提供的创建功能一样,可以帮助我们快速的构建出一个基础的 Spring Boot 工程。02 什么是 SpringBoot ?SpringBoot 官方有一句话可以概括这个问题。那就是「约定大于配置」。这句话什么意思?相信学过 Spring 的人都知道,我们要手动写.

2021-08-12 22:53:52 236

原创 SpringBoot 整合 RabbitMQ,实现消息发送与多个消费者的情况

文章目录配置依赖配置队列生产者消费者配置### rabbitmqspring: rabbitmq: host: 192.168.2.111 port: 5673 username: guest password: guest依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-a.

2021-08-12 22:41:11 1687

原创 悲剧!IDEA 突然找不到类了?

文章目录lastUpdated 文件导致依赖无法正常导入maven 依赖冲突,引用错误maven 间接依赖异常IDEA 本地缓存异常我们本地使用 IDEA 运行 maven 项目的时候,有时候运气不好,就会遇到某些 maven 依赖无法正常找到、导入。这就会导致 IDEA 构建项目的时候爆出一堆醒目的红色 Error。那最近我新拉取一个项目源码,本地运行项目,又碰到这种情况。按照以前的解决经验,捣鼓了一下,发现没办法解决。于是研究了一下午,终于解决这个问题 ????。吐槽一下,刚开始一度以为是这个

2021-08-12 22:37:20 1656

原创 Kafka 的核心原理

文章目录概述消息引擎消息格式v0v1v2消息的压缩如何开启压缩生产者端:何时会压缩何时解压缩最佳实践消息传输Java 生产者如何管理 TCP 连接Java 消费者如何管理 TCP 连接幂等性 Producer事务事务型 Producer消息保存分区策略自定义分区策略1. 轮询策略2. 随机策略3.按消息键保序策略副本机制消息消费重平衡问题消费者端重平衡流程Broker 端重平衡流程场景一:新成员入组。场景二:组成员主动离组。场景三:组成员崩溃离组(崩溃离组是指消费者实例出现严重故障,突然宕机导致的离组)场.

2021-08-10 23:42:12 183

原创 java【二叉树】

文章目录java【二叉树】java【二叉树】上一篇文章为大家带来了一个关于链表的结构实现,我采用是内部类实现方式,那对于链表而言的话,链表缺点就是检索数据,那当然有人会提出一些优化方法,例如我们在学习集合时候了解到,二叉树,红黑树等,在数据改变的情况,进行对数据旋转,达到一个树的左右平衡,以此达到一个最佳的数据检索到效率。下面的一个 demo 主要便于我们理解二叉树数据结构,同样我们采用也是内部类的方式,对于红黑树的话,其实是在二叉树的基本在进行进一步数据优化,但是目前我还不能用代码的形式为大家展.

2021-08-10 23:08:49 52

原创 java【链表实现】

文章目录java【链表实现】java【链表实现】一般我们在学习集合之前,都会去了解了解数据结构的相关知识,最常见的莫过于链表,在 List 集合里面,linkedList 这个子类就是使用的链表的数据结果进行实现的,链表的优势:新增数据,删除数据,会很容易动态数组优势:检索快下面的有一个关于链表的数据结构,是我写的一个测试,便于我们加深对链表结构的掌握。package ITaljavaT3;import org.junit.jupiter.api.Test;/* * 链表的的增加.

2021-08-10 23:07:05 59

原创 Redis 笔记四

文章目录异步机制Redis 实例有哪些阻塞点?1. 和客户端交互时的阻塞点2. 和磁盘交互时的阻塞点3. 主从节点交互时的阻塞点4. 切片集群实例交互时的阻塞点哪些阻塞点可以异步执行?异步的子线程机制CPU 与 Redis主流的 CPU 架构CPU 多核对 Redis 性能的影响CPU 的 NUMA 架构对 Redis 性能的影响绑核的风险和解决方案异步机制Redis 实例有哪些阻塞点?Redis 实例在运行时,要和许多对象进行交互,这些不同的交互就会涉及不同的操作,下面我们来看看和 Redis .

2021-08-10 22:56:13 79

原创 Redis 笔记三

文章目录万金油的 String 不一定好用内存使用量大的原因如何优化个人总结有一亿个 keys 要统计,应该用哪种集合聚合统计排序统计二值状态统计基数统计万金油的 String 不一定好用场景:开发一个图片存储系统,要求这个系统能快速地记录图片 ID 和图片在存储系统中保存时的 ID(可以直接叫作图片存储对象 ID)。同时,还要能够根据图片 ID 快速查找到图片存储对象 ID。用 10 位数来表示图片 ID 和图片存储对象 ID,例如,图片 ID 为 1101000051,它在存储系统中对应的 .

2021-08-10 22:49:26 113

原创 Redis 笔记二

文章目录什么是主从模式主从之间什么时候进行第一次同步主从级联模式分担全量复制时的主库压力主从库间网络断了怎么办?哨兵机制的基本流程主观下线与客观下线如何筛选 + 打分?哨兵之间的选举基于 pub/sub 机制的哨兵集群组成这样哨兵节点之间就完成了彼此的通信建立。基于 pub/sub 机制的客户端事件通知由哪个哨兵执行主从切换?切片集群(Redis 官网集群模式)Redis 如何保存更多数据?数据切片和实例的对应分布关系客户端如何定位数据?MOVED 命令ASK 命令什么是主从模式那我们总说的 Red.

2021-08-10 22:42:16 99

原创 Redis 笔记一

文章目录一 Redis 变慢的原因二 渐进式 rehash 拷贝三 Redis 的几种数据结构四 为什么说 Redis 单线程这么快五 什么是多路复用机制?六 AOF七 三种写回策略八 AOF 重写会阻塞吗?九 Q:RDB(Redis DataBase) 快照RDB 重写会阻塞吗?如何做快照?多久做快照?优化一 Redis 变慢的原因但是,这里依然存在一个问题,哈希冲突链上的元素只能通过指针逐一查找再操作。如果哈希表里写入的数据越来越多,哈希冲突可能也会越来越多,这就会导致某些哈希冲突链过长,进而.

2021-08-10 22:17:32 170

原创 从零开始,手写 Spring IOC

文章目录什么是 ioc?控制反转 依赖注入ioc 工作原理实现 ioc什么是 ioc?解决对象管理和对象依赖的问题本来是我们手动 new 出的对象,现在交给 Spring 的 IOC 容器管理,IOC 容器可以理解为一个对象工厂,我们把该对象交给工厂,工厂管理这些对象的创建以及依赖关系。当我们需要用对象的时候,直接从工厂里拿即可。控制反转 依赖注入**控制反转:**本来是我们手动 new 出的对象,现在交给 Spring 的 IOC 容器管理(设计)**依赖注入:**对象无需创建和管理它的依.

2021-08-10 22:01:33 123

原创 线程池拒绝策略

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言四种线程池拒绝策略线程池默认的拒绝策略设置线程池拒绝策略拒绝策略场景分析AbortPolicyDiscardPolicyDiscardOldestPolicyCallerRunsPolicy总结前言线程池,相信很多人都有用过,没用过相信的也有学习过。但是,线程池的拒绝策略,相信知道的人会少许多。四种线程池拒绝策略当线程池的任务缓存队列已满并且线程池中的线程数目达到maximumPoolSize时,如果还有任务到来就会

2021-08-10 21:45:51 298

原创 如何保证LinkedHashMap以及它实现LRU缓存线程安全

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录线程安全的 LinkedHashMap线程安全的 LinkedHashMap我这里花几分钟时间聊一下这个问题。通过阅读我前面的文章,我们知道:HashMap 有一个问题,就是迭代 HashMap 的顺序并不是 HashMap 放置的顺序,也就是无序。HashMap 的这一缺点往往会带来困扰,因为有些场景,我们期待一个有序的 Map。这个时候,LinkedHashMap 就闪亮登场了,它虽然增加了时间和空间上的开销,但是通

2021-08-09 21:46:22 2221

原创 SpringBoot内置生命周期事件详解 SpringBoot源码(十)

文章目录SpringBoot内置生命周期事件详解 SpringBoot源码(十)2 引言3 SpringBoot生命周期事件源码分析3.1 JDK的事件基类EventObject3.2 Spring的事件基类ApplicationEvent3.3 SpringBoot的事件基类SpringApplicationEvent3.4 SpringBoot具体的生命周期事件类3.4.1 ApplicationStartingEvent3.4.2 ApplicationEnvironmentPreparedEven.

2021-08-06 00:11:19 305

原创 SpringBoot事件监听机制源码分析(上) SpringBoot源码(九)

文章目录SpringBoot事件监听机制源码分析(上) SpringBoot源码(九)1 温故而知新2 引言3 SpringBoot广播内置生命周期事件流程分析3.1 为广播SpringBoot内置生命周期事件做前期准备3.1.1 加载ApplicationListener监听器实现类3.1.2 加载SPI扩展类EventPublishingRunListener3.2 广播SpringBoot的内置生命周期事件4 SpringBoot的内置生命周期事件总结SpringBoot事件监听机制源码分析(上.

2021-08-06 00:04:32 147

原创 SpringApplication对象是如何构建的? SpringBoot源码(八)

文章目录SpringApplication对象是如何构建的? SpringBoot源码(八)1 温故而知新2 引言3 SpringApplication对象的构建过程3.1 推断项目应用类型3.2 推断哪个类调用了main函数4 SpringBoot的SPI机制原理解读4.1 获得类加载器4.2 加载spring.factories配置文件中的SPI扩展类4.3 实例化从spring.factories中加载的SPI扩展类5 小结SpringApplication对象是如何构建的? SpringBoo.

2021-08-05 23:57:39 120

原创 SpringBoot的启动流程是怎样的?SpringBoot源码(七)

文章目录SpringBoot的启动流程是怎样的?SpringBoot源码(七)1 温故而知新2 引言3 如何编写一个SpringBoot启动类4 @SpringBootApplication5 SpringBoot的启动流程是怎样的?6 小结SpringBoot的启动流程是怎样的?SpringBoot源码(七)注:该源码分析对应SpringBoot版本为2.1.0.RELEASE1 温故而知新本篇接 SpringBoot内置的各种Starter是怎样构建的? SpringBoot源码(六)温故.

2021-08-05 23:49:48 154

原创 SpringBoot内置的各种Starter是怎样构建的? SpringBoot源码(六)

文章目录SpringBoot内置的各种Starter是怎样构建的? SpringBoot源码(六)1 温故而知新2 引言3 Maven传递依赖的optional标签4 SpringBoot内置的各种Starter是怎样构建的?5 模仿SpringBoot包结构自定义一个Starter6 小结SpringBoot内置的各种Starter是怎样构建的? SpringBoot源码(六)注:该源码分析对应SpringBoot版本为2.1.0.RELEASE1 温故而知新本篇接外部配置属性值是如何被绑定.

2021-08-05 23:37:40 305

原创 SpringBoot的配置属性值是如何绑定的? SpringBoot源码(五)

文章目录SpringBoot的配置属性值是如何绑定的? SpringBoot源码(五)2 @EnableConfigurationProperties3 EnableConfigurationPropertiesImportSelector4 ConfigurationPropertiesBeanRegistrar5 ConfigurationPropertiesBindingPostProcessorRegistrar6 ConfigurationBeanFactoryMetadata7 Configu.

2021-08-05 23:26:48 470

原创 SpringBoot是如何实现自动配置的? SpringBoot源码(四)

文章目录SpringBoot是如何实现自动配置的? SpringBoot源码(四)1 前言2 @SpringBootApplication注解3 如何去找SpringBoot自动配置实现逻辑的入口方法?4 分析SpringBoot自动配置原理4.1 分析自动配置的主要逻辑4.2 有选择的导入自动配置类5 AutoConfigurationImportFilter5.1 OnClassCondition5.1.1 createOutcomesResolver5.1.2 new StandardOutcome.

2021-08-05 23:13:40 448

原创 助力SpringBoot自动配置的条件注解原理揭秘 SpringBoot源码(三)

文章目录2 SpringBoot的派生条件注解3 Condition接口3.1 Condition接口源码分析3.2 Spring的内置Condition接口实现类4 SpringBootCondition源码解析4.1 OnResourceCondition源码分析4.2 OnBeanCondition源码分析4.3 OnWebApplicationCondition4.4 其他5 如何扩展SpringBootCondition# 助力SpringBoot自动配置的条件注解原理揭秘 SpringBo.

2021-08-05 23:00:52 375

HTML5圣诞老人过悬崖小游戏.rar

HTML5圣诞老人过悬崖小游戏,点击鼠标左键,伸长棍子。

2021-05-11

HTML5热气球飞行游戏代码.rar

HTML5热气球飞行游戏代码,长按鼠标控制,低空飞行以节省燃料。

2021-05-11

JS模拟计算器在线工具代码.rar

JS模拟计算器在线工具代码,有加减乘除、百分比、根号等功能。

2021-05-11

空空如也

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

TA关注的人

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