java开发
文章平均质量分 82
java 问题详解
有头发的程序猿!
哪有不可逾越的大山,只有想而不敢的苟且。
后续会更新MQ,springCloud,vue,python,人不懒则路不会断,兢兢业业总好过碌碌无为。
展开
-
随手记录第九话 -- Java框架整合篇
实例:Mybatis/*** 实现自定义bean并注册到BeanDefinitionRegistry//TestAction 无任何加载的标识 可以用这种方法向容器注册 mybatis里面用到 BeanDefinitionBuilder builder = BeanDefinitionBuilder . genericBeanDefinition(TestAction . class);原创 2023-03-29 16:11:38 · 1090 阅读 · 1 评论 -
Zookeeper第三话 -- Springboot基于zk+dubbo实现远程服务调用
本文主要记录springboot + zk + dubbo完成远程通信服务。坏境配置:zookeeper3.7、dubbojar包3.0.6就一个接口,一个实现,这里贴一下service接口类2.yaml配置3.pom文件基于springboot 2.5.64.service实现5.客户端controller接口6.启动服务需要添加注解,最后出现此日志视为成功以上就是本章的全部内容了。上一篇:Zookeeper第二话 – Springboot基于zk watch机制实现备用机...原创 2022-06-14 11:44:57 · 402 阅读 · 0 评论 -
Zookeeper第二话 -- Springboot基于zk watch机制实现公用配置和备用节点
Zookeeper第二话 -- Springboot基于zk watch机制实现公用配置和备用节点鉴于zk的监听还可以实现很多的功能,本内容为测试zk写出,这里仅供参考。下节分析zk的集群搭建。以上就是本章的全部内容了。上一篇:Zookeeper第一话 – docker安装zookeeper以及Springboot集成zk下一篇:Zookeeper第三话 – Springboot基于zk+dubbo实现远程服务调用......原创 2022-06-13 17:25:09 · 532 阅读 · 0 评论 -
Zookeeper第一话 -- docker安装zookeeper以及Springboot集成zk
zookeeper是一个分布式协调组件,为分布式应用提供一致性服务的软件。提供的功能包括:配置维护、域名服务、分布式同步等zookeeper服务中含有临时节点和永久的节点。临时节点当客户端和服务端断开以后,会自动删除该节点。永久节点则不会。zookeeper服务中提供了分布式独享锁,选举、队列的接口。此外zookeeper提供了观察者回调,为继续等待获取分布式锁提供了监控的能力(1.监听节点的数据变化。2.监听子节点的增减变化)。基于这个监听机制可以实现配置统一管理。......原创 2022-06-12 13:32:46 · 282 阅读 · 0 评论 -
Redis第三话 – Springboot集成Redis以及常用API和客户端介绍
Redis第三话 – Springboot集成Redis以及常用API和客户端介绍本文主要记录在Springboot中集成Redis的使用。基于springboot 版本2.5.6,parent包就不贴了。上一篇:Redis第二话 – Redis的高端操作(发布订阅、事务、LUA脚本)下一篇:Redis第四话 – redis分布式集群(主从,哨兵)和网络模型分析(多路复用,单Reactor模型)黑发不知勤学早,白首方悔读书迟......原创 2022-06-02 16:39:04 · 479 阅读 · 0 评论 -
通信框架之Netty第五话 - 一文了解RPC通信原理并使用Netty实现一个PRC
通信框架之Netty第五话 - 一文了解RPC通信原理并使用Netty实现一个PRC本内容仅供了解RPC源码,请勿做其他用途!!!上一篇:通信框架之Netty第四话 - Netty深入了解之简易群聊功能的实现下一篇:Redis第一话 – Redis介绍以及基于Docker安装Redis书卷多情似故人,晨昏忧乐每相亲原创 2022-05-17 17:59:13 · 670 阅读 · 2 评论 -
mybatis第九话 - 手写实现一个简单的mybatis版本
大大的简化整个流程,方便读懂mybait整个源码。源码地址直通车以上就是本章的全部内容了。上一篇:mybatis第八话 - mybaits之ParameterHandler参数处理源码分析下一篇:mybatis第十话 - mybaits事务的源码分析立身以立学为先,立学以读书为本原创 2022-03-14 15:18:48 · 740 阅读 · 0 评论 -
mybatis第八话 - mybaits之ParameterHandler参数处理源码分析
本章主要记录了mybatis参数处理源码分析上一篇:[mybatis第七话 - mybatis插件篇之pagehelper的源码分析](https://blog.csdn.net/qq_35551875/article/details/122990101)下一篇:[mybatis第九话 - 手写实现一个简单的mybatis版本](https://blog.csdn.net/qq_35551875/article/details/123419753)勿以恶小而为之,勿以善小而不为原创 2022-03-13 11:00:00 · 1007 阅读 · 0 评论 -
mybatis第七话 - mybatis插件Interceptor之pagehelper的源码分析
基于springboot的自动装配机制,先扫描启动类目录下的class类,再是自动装配类`EnableAutoConfiguration`配置下的类初始化,手写开发的查询插件先初始化PageInterceptor分页插件,在`InterceptorChain#pluginAll`最后封装的是PageInterceptor分页插件,然后分页最终执行的返回并不是`invocation.proceed()`,也就是手写的查询插件会失效掉。下一篇:mybaits之ParameterHandler原创 2022-03-11 11:25:01 · 897 阅读 · 0 评论 -
mybatis第六话 - mybatis插件篇之pagehelper的使用
这块谨记,PageHelper分页插件的页码是从1开始的!!!以上就是本章的全部内容了。上一篇:mybatis第五话 - mybatis情同手足的插件之TypeHandler和Interceptor下一篇:mybatis第七话 - mybatis插件篇之pagehelper的源码分析老冉冉其将至兮,恐修名之不立原创 2022-03-09 14:32:09 · 449 阅读 · 0 评论 -
mybatis第五话 - mybatis情同手足的插件之TypeHandler和Interceptor
源码分析完了,其实还有很多附加的插件没有分析了,因为这些给开发者实现用的,所以还是先学会用再看源码了。今天主要两个点:1. TypeHandler入参出参实现使用2. Interceptor插件实现使用原创 2022-03-07 18:25:34 · 851 阅读 · 0 评论 -
mybatis第四话 - 让我们一层一层来剥开mybatis的心,源码分析
mybatis第四话 - 让我们一层一层来剥开mybatis的心,源码分析以上就是本章的全部内容了。上一篇:mybatis第三话 - mybatis的高端用法你会吗?下一篇:2222云想衣裳花想容,春风拂槛露华浓原创 2022-02-24 14:46:48 · 551 阅读 · 0 评论 -
mybatis第三话 - mybatis的高端用法你会吗?
以上均为作者在项目中所用过的,还想了解其他的用法的自行了解哦以上就是本章的全部内容了。上一篇:[mybatis第二话 - mybatis,多数据源的快乐你懂吗?](https://blog.csdn.net/qq_35551875/article/details/122603744)下一篇:[mybatis第四话 - 让我们一层一层来剥开mybatis的心,源码分析](https://blog.csdn.net/qq_35551875/article/details/122603827)及时当勉原创 2022-02-19 14:15:00 · 562 阅读 · 0 评论 -
Springboot源码分析第三弹 - 自动装配扩展,手动实现一个starter
到这里整个springboot体系就完结了,接下来开始mybatis章节了,喜欢的可以双击关注一下上一篇:[Springboot源码分析第二弹 - 自动配置实现](https://blog.csdn.net/qq_35551875/article/details/122407401)下一篇:[mybatis第一话 - mybatis,缘分让我们相遇](https://blog.csdn.net/qq_35551875/article/details/122603原创 2022-01-21 12:45:00 · 246 阅读 · 0 评论 -
Springboot源码分析第二弹 - 自动配置实现
**自动配置实现分析就到这里了,这个比自动装配简单多了,主要是要了解spring.factories其中的Listener配置**以上就是本章的全部内容了。上一篇:[Springboot源码分析第一弹 - 自动装配实现](https://blog.csdn.net/qq_35551875/article/details/122407383)下一篇:[Springboot源码分析第三弹 - 自动装配扩展,手动实现一个starter](https://blog.csdn.net/qq_35551875原创 2022-01-19 17:03:53 · 313 阅读 · 0 评论 -
Springboot源码分析第一弹 - 自动装配实现
到这里,整个自动装配的流程就结束了,源码比较绕,需要很有耐心看上一篇:[SpringMvc源码分析第六弹 - 基于SpringMvc源码后的手写高仿版](https://blog.csdn.net/qq_35551875/article/details/122407291)下一篇:[Springboot源码分析第二弹 - 自动配置实现](https://blog.csdn.net/qq_35551875/article/details/122407401)东隅已逝,桑榆原创 2022-01-15 10:45:00 · 249 阅读 · 0 评论 -
SpringMvc源码分析第六弹 - 基于SpringMvc源码后的手写高仿版
SpringMvc源码分析第六弹 - 基于SpringMvc源码后的手写高仿版上一篇:Spring源码分析第五弹 - 神级的spring还有其他什么功效?下一篇:Springboot源码分析第一弹 - 自动装配实现问渠那得清如许,为有源头活水来原创 2022-01-12 14:30:00 · 257 阅读 · 0 评论 -
Spring源码分析第五弹 - 神级的spring还有其他什么功效?
Spring源码分析第五弹 - 神级的spring还有其他什么功效?上一篇:[Spring源码分析第四弹 - MVC分析](https://blog.csdn.net/qq_35551875/article/details/121810355)下一篇:[SpringMvc源码分析第六弹 - 基于SpringMvc源码后的手写高仿版](https://blog.csdn.net/qq_35551875/article/details/122407291)读书之法,在循序而渐进,熟读而精思原创 2022-01-11 09:30:00 · 297 阅读 · 0 评论 -
Spring源码分析第四弹 - MVC分析
Spring源码分析第四弹 - MVC分析以上就是本章的全部内容了。上一篇:Spring源码分析第三弹 - AOP切面编程分析下一篇:Spring源码分析第五弹 - 神级的spring还有其他什么功效?云想衣裳花想容,春风拂槛露华浓...原创 2022-01-06 19:03:59 · 686 阅读 · 0 评论 -
Spring源码分析第三弹 - AOP切面编程分析
Spring源码分析第三弹 - AOP切面编程分析以上就是本章的全部内容了。上一篇:Spring源码分析第二弹 - DI 依赖注入分析下一篇:Spring源码分析第四弹 - MVC分析云想衣裳花想容,春风拂槛露华浓原创 2021-12-27 14:00:00 · 252 阅读 · 0 评论 -
Spring源码分析第二弹 - DI 依赖注入分析
Spring源码分析第二弹 - DI 依赖注入分析以上就是本章的全部内容了。上一篇:Spring源码分析第一弹 - IOC控制反转下一篇:Spring源码分析第三弹 - AOP切面编程分析云想衣裳花想容,春风拂槛露华浓...原创 2021-12-25 10:00:00 · 135 阅读 · 0 评论 -
Spring源码分析第一弹 - IOC控制反转分析
spring源码分析第一弹 - IOC控制反转以上就是本章的全部内容了。上一篇:最详细Java中动态代理分析-- Proxy下一篇:2222云想衣裳花想容,春风拂槛露华浓原创 2021-12-22 16:39:26 · 188 阅读 · 0 评论 -
SpringMvc手写简单实现篇 - MVC完结篇
SpringMvc手写简单实现篇 - MVC完结篇上一篇:SpringMvc手写简单实现篇 - AOP切换编程篇下一篇:Spring源码分析第一弹 - IOC控制反转黑发不知勤学早,白发方悔读书迟原创 2021-12-16 14:15:00 · 608 阅读 · 0 评论 -
SpringMvc手写简单实现篇 - AOP切面编程篇
SpringMvc手写简单实现篇 - AOP切换编程篇上一篇:SpringMvc手写简单实现篇 - IOC容器、DI依赖注入篇下一篇:SpringMvc手写简单实现篇 - MVC完结篇少壮不努力,老大徒伤悲...原创 2021-12-15 10:30:00 · 827 阅读 · 0 评论 -
SpringMvc手写简单实现篇 - IOC容器、DI依赖注入篇
SpringMvc手写实现篇 - IOC容器篇以上就是本章的全部内容了。上一篇:最详细Java中动态代理分析-- Proxy下一篇:SpringMvc手写简单实现篇 - DI依赖注入篇云想衣裳花想容,春风拂槛露华浓原创 2021-12-14 14:15:00 · 400 阅读 · 0 评论 -
最详细Java中动态代理分析-- Proxy
最详细Java中动态代理分析-- Proxy以上就是本章的全部内容了。上一篇:线程池工作线程ForkJoin的使用下一篇:Spring源码分析第一弹 - IOC控制反转云想衣裳花想容,春风拂槛露华浓原创 2021-12-13 14:00:00 · 513 阅读 · 0 评论 -
线程池工作线程ForkJoin的使用
线程池工作线程ForkJoin的使用上一篇:一文带你熟透Java线程池的使用及源码下一篇:2222云想衣裳花想容,春风拂槛露华浓原创 2021-12-12 09:30:00 · 322 阅读 · 0 评论 -
Java本地线程变量ThreadLocal的神秘面纱
Java本地线程变量ThreadLocal的神秘面纱以上就是本章的全部内容了。上一篇:J.U.C中的工具类及原理分析(CountDownLatch、Semaphore、CyclicBrrier)下一篇:1222222云想衣裳花想容,春风拂槛露华浓原创 2021-12-10 11:45:00 · 2139 阅读 · 0 评论 -
一文带你熟透Java线程池的使用及源码
一文带你熟透Java线程池的使用及源码在单个线程使用过程中遇到的问题(new Thread().start):线程的频繁创建与销毁线程执行数据多且高频,频繁CPU上下文切换,造成CPU的资源浪费原创 2021-12-11 12:30:00 · 1056 阅读 · 0 评论 -
J.U.C中的工具类及原理分析(CountDownLatch、Semaphore、CyclicBarrier)
J.U.C中的工具类及原理分析(CountDownLatch、Semaphore、CyclicBrrier)以上就是本章的全部内容了。上一篇:线程通信synchronized中的wait/notify、J.U.C Condition的使用和源码分析下一篇:1222222云想衣裳花想容,春风拂槛露华浓...原创 2021-12-09 09:30:00 · 303 阅读 · 0 评论 -
J.U.C中的阻塞队列使用及源码分析--ArrayBlockingQueue
J.U.C中的阻塞队列使用及源码分析–ArrayBlockingQueue以上就是本章的全部内容了。上一篇:线程通信synchronized中的wait/notify、J.U.C Condition的使用和源码分析上一篇:1222222云想衣裳花想容,春风拂槛露华浓...原创 2021-12-08 16:15:00 · 323 阅读 · 0 评论 -
线程通信synchronized中的wait/notify、J.U.C Condition的使用和源码分析
线程通信Synchronized中的wait/notify、J.U.C Condition的使用和源码分析原创 2021-12-07 12:00:00 · 167 阅读 · 0 评论 -
J.U.C ReentrantLock可重入锁使用以及源码分析
Lock J.U.C java.util.concurrent可重入锁使用以及源码分析原创 2021-12-06 12:45:00 · 242 阅读 · 0 评论 -
线程安全性之有序性和内存屏障
线程安全性之有序性和内存屏障原创 2021-12-05 17:00:00 · 196 阅读 · 0 评论 -
线程安全性之可见性、缓存一致性(MESI)以及伪共享问题分析
可见性问题可见性是什么:线程A变量对线程B不可见,例如数据库脏读。1.代码示例 static boolean flag = false; static int num = 0; public static void main(String[] args) throws InterruptedException { new Thread(()->{ //里面无触发活性的东西 会导致活性失效 while (!fla原创 2021-12-04 15:00:00 · 519 阅读 · 2 评论 -
并发编程之锁的认识和同步锁 -- synchronized
并发编程之同步锁 – synchronized原创 2021-12-02 11:30:00 · 176 阅读 · 0 评论 -
Java中的死锁、活锁以及Java服务器CPU突然飙升问题排查
还在为cpu突然飙升烦恼吗? 如果是的话,好好看看这篇文章吧,兴许能帮到你。1. 死锁死锁一般发生在两个或者多个线程一直在等待另一个线程释放锁或者资源的情形。这种情况可能会导致线程直接挂掉,因为都在等待锁。1.代码示例两个线程在完成指定操作时,都需要获取锁,T1线程是lock1->lock2,T2线程是lock2->lock1。因此两个线程都在以相反的顺序获取锁。 @GetMapping("/deadlock") public void deadlock() {原创 2021-12-01 15:15:00 · 3077 阅读 · 0 评论 -
多线程以及线程成源码分析
什么是多线程原创 2021-11-30 22:15:00 · 334 阅读 · 0 评论 -
Map接口 -- HashMap源码分析篇
废话不多说,先上图:Map接口之HashMap(最常用)基于哈希表的 Map 接口的实现。此实现提供所有可选的映射操作,并允许使用 null 值和 null 键。(除了非同步和允许使用 null 之外,HashMap 类与 Hashtable 大致相同。)此类不保证映射的顺序,特别是它不保证该顺序恒久不变。1.结构图2.底层结构//底层实现 在list中链表是一个值 这里是KV键值对 一个map由N多个Node组成static class Node<K,V> implements原创 2021-11-28 19:45:00 · 93 阅读 · 0 评论 -
Map接口 -- TreeMap源码分析篇
Map接口之TreeMap(有序Map)有序map,结构为一个平衡二叉树,简称红黑树,TreeMap底层维护这一个Entry<K,V>对象1.底层结构Entry<K,V>K key;V value;Entry<K,V> left; //左节点Entry<K,V> right; //右节点Entry<K,V> parent; //父节点boolean color = BLACK; //节点颜色看到红黑树就不得不说一下红黑树的特性了原创 2021-11-29 09:30:00 · 138 阅读 · 0 评论