- 博客(2027)
- 资源 (46)
- 收藏
- 关注

原创 Spring基础(1):两个概念
上帝说,要有光。于是特斯拉搞出了交流电。Java说,万物皆对象。但是Spring另外搞了BeanDefinition...什么BeanDefinition呢?其实它是bean定义的一个顶级接口:正如BeanDefinition接口的注释所言:一个BeanDefinition是用来描述一个bean实例的哎呀卧槽,啥玩意啊。描述一个bean实例?我咋想起了Class类呢。其实,两者并没有矛盾。
2023-11-06 14:06:20
479
1

原创 (一)Spring源码解析:容器的基本实现
是整个bean加载的核心部分,是Spring注册及加载bean的默认实现。集成自DefaultListableBeanFactory,不同的地方是在XmlBeanFactory中使用了自定义的XML读取器,实现了个性化的BeanDefinitionReader读取。
2023-11-06 10:14:58
374

原创 再见,curder!
大家好,我是不耍嘴皮子,只讲java底层源码课的码炫课堂创始人码哥,全网唯一讲解及手写各大框架及中间件源码的极客,上班之余做源码课只是我的爱好,拯救水深火热中的curder屌丝们才是我的使命!众所周知,2022年毕业生已达1076万人,不管你是应届的或者非应届,此时此刻这就是与你竞争的庞大人群,请问你的优势在哪里?北大博士去当城管,清大硕士去三,四线城市街道办,人都已经被逼到这个份儿上了。。。有人说你又在贩卖焦虑了,其实我本无意贩卖焦虑,但是焦虑又是客观存在的,难到我不贩卖焦虑你就不焦虑了吗?在这个人均焦虑
2022-06-17 09:42:53
242

原创 说volatile和MESI协议没有关系的水货们请闭嘴吧
一直很想说这个问题,垃圾培训机构已经把韭菜们带偏了,网上千篇一律的说volatile和MESI协议没有关系,那究竟有没有关系呢??坐好认真听!1、缓存一致性问题 由于存储设备与处理器的运算速度差距很大,计算机系统在内存与处理器之间增加了一层高速缓存,将运算需要的数据复制到缓存中,让运算能快速进行。 有了高速缓存的存在以后,每个CPU的处理过程是, 先将计算需要用到的数据缓存在CPU高速缓存中,在CPU 进行计算时,直接从高速缓存中读取数据并且在计算完成 之后写入到缓存
2022-03-19 22:02:47
2569
7

原创 3位1体学习法(smart哥)
3位1体学习法(码农最正确的学习姿势)文章目录3位1体学习法(码农最正确的学习姿势)前言讲师介绍何为3位1体打法?1、第1位2、第2位3、第3位结语前言3位1体这个概念来源于刘慈欣的科幻小说《三体》,smart哥本人非常喜欢这部小说,感叹作者作为一个技术狂,他这种技术狂特有的冷酷具有非凡的吸引力,更关键的是他天马行空的想象。基于这个概念smart哥独创了3位1体的码农学习法,该学习法是码农在浩瀚的技术海洋中的指南针,面对浩瀚的技术和自己有限的职业生涯,那么码农如何自处?35岁后被淘汰还是继续保持优良
2020-07-10 07:56:07
7091
1

原创 springboot-2.3.x最新版源码阅读环境搭建-基于gradle构建(全网首发)
springboot-2.3.x最新版源码阅读环境搭建-基于gradle构建(全网首发)文章目录springboot-2.3.x最新版源码阅读环境搭建-基于gradle构建(全网首发)一、前言二、环境准备三、下载源码四、开始构建五、源码测试六、问题及解决方案结语码炫课堂技术交流q群:963060292一、前言跟很多小伙伴聊天,发现一个严重的问题,很多小伙伴横向发展的貌似很不错,很多技术都能说出一二,但是如果在某个技术上深挖一下就不行了,问啥啥不会。就拿springboot来说,很多同学止步于spri
2020-07-09 09:15:09
15786
5

原创 spring5.3.x源码阅读环境搭建
spring5.3.x源码阅读环境搭建-gradle构建编译文章目录spring5.3.x源码阅读环境搭建-gradle构建编译一、依赖工具二、下载源码三、开始构建四、编译源码五、源码测试六、问题及解决方案附:spring源代码各个模块作用结语码炫课堂技术交流q群:963060292Spring系列生态十分丰富,涉及到各个方面。但是作为Spring生态的核心基础Spring,是最重要的环节,需要理解Spring的设计原理,就需要深度研读Spring源码。本文着重阐述当前最新版spring5.3.x的
2020-07-08 10:31:30
13356
7

原创 CLion调试redis6源码(全网首发)
CLion调试redis6源码(全网首发)文章目录CLion调试redis6源码(全网首发)背景一、安装配置cygwin二、安装clion三、clion中导入redis源码四、修改CMakeLists.txt文件五、编译&调试redis6源码六、注意点背景clion使用cmake来管理编译redis源码,而redis源码本身使用原生的make,因此直接将redis源码导入clion无法直接运行,需要配置cmake。写c程序大体步骤为:1).用编辑器编写源代码,如.c文件。2).用编译器编
2020-06-30 10:20:21
11260
4

原创 【面试题】研究过tomcat的NioEndpoint源码吗?请阐述下Reactor多线程模型在tomcat中的实现。
tomcat的底层网络NIO通信基于主从Reactor多线程模型。它有三大线程组分别用于处理不同的逻辑:Acceptor线程:等待和接收客户端连接。在接收到连接后,创建SocketChannel并将其注册到poller线程。poller线程:将SocketChannel放到selector上注册读事件,轮询selector,获取就绪的SelectionKey,并将就绪的SelectionKey(或SocketChannel)委托给工作线程。工作线程:执行真正的业务逻辑。备注:Accep...
2020-06-07 12:16:01
6443

原创 tomcat堆栈中10大常见线程详解
Tomcat作为一个服务器来讲,必然运行着很多的线程,而每一个线程究竟是干什么的,这个需要非常的清楚,无论是打印断点,还是通过jstack进行线程栈分析,这都是必须要掌握的技能。 本文带你基于Tomcat7,8,9的版本,识别Tomcat堆栈中的线程。1、main线程main线程是tomcat的主要线程,其主要作用是通过启动包来对容器进行点火:main线程一路启动了Catalina,StandardServer[8005],StandardService[Catalina],Standar.
2020-06-06 20:08:21
10593

原创 老大说了,再用lombok就给我收拾东西走人!
我承认,Lombok是一个很不错的Java库,它可以让你在少写代码的同时耍耍酷,简单的几个注解,就可以干掉一大片模板代码。但是,所有的源代码很多时候是用来阅读的,只有很少的时间是用来执行的(你可以细品这句话)。一年以前,我和大多数人都认为Lombok的出现会让Java的编码体验会更好,并极力的在我的团队中推荐使用Lombok。一年以后,我开始对此产生顾虑,尤其是在我准备为开源的博客系统Una-Boot升级Java版本时,我才意识到Lombok自己掉入了一个戏法陷阱。在我进一步分析其源代码并理解相关注解的
2020-06-06 18:11:09
814
1

原创 阿里《Java开发手册》中的 1 个bug!
本来打算写一篇《阿里巴巴为什么不允许日志输出时,使用字符串拼接?》的文章,主要是想从性能方面来说此问题,可在文章写到一半进行性能测试时,却发现了一个异常问题,实际测试的结果和手册上描述的结果是截然相反的!天撸了,怎么会发生这种事情?此时我的内心是拒绝的,因为文章已经写了一半了啊,这让我瞬间陷入了尴尬的境地。阿里巴巴的《Java开发手册》泰山版(最新版)是这样描述的,它在第二章第三小节的第 4 条规范中指出:【强制】在日志输出时,字符串变量之间的拼接使用占位符的方式。说明:因为 String
2020-06-06 16:21:07
641

原创 【悟思维】项目架构决定性能?优秀的架构胜过一万次的调优
这个问题很容易理解,一个单节点(一台应用服务器+一台数据库服务器)的系统架构,任凭你使出浑身解数来调优也不可能让系统达到百万级并发,别说百万级了,上万并发都不可能。不说其他的,在一个性能相对不错的物理机上,mysql最多也就能承载3500-4500的QPS,你说你能调优调到上万并发??在目前来看如果不借助于其他组件或者其他技术手段是不太可能的。首先大家要明白一个最底层的逻辑,所有的性能问题归根结底绝大多数都是要解决IO的读写性能问题。我们在线程模型上面孜孜不倦的追求,从BIO到NIO,再到react
2020-06-05 20:03:24
1007
1

原创 【学心法】如何从源码角度体会作者的设计思想?
我们在做项目时候一般会遇到下面的问题:问题一是不知道如何去设计,比如刚入职场时,来一个需求需做概要设计,不知如何下手,不得不去看当前系统类似需求是如何设计的,然后仿照去设计。 问题二是设计的时候,考虑问题不周全,相比职场新手,这类人对一个需求依靠自己的经验已经能够拿出一个概要设计,但是设计中经常会遗漏一些异常细节,比如使用多线程有界队列执行任务,遇到机器宕机了,如果队列里面的任务不存盘的话,那么机器下次启动时候这些任务就丢失了。对于这些问题,说到底主要是因为经验不够,而经验主要从项目实践中积累,所以
2020-06-05 12:50:58
1641

原创 老大说了,即使你是女程序员,这性能调优你也得拿下!
【悟思维】项目架构决定性能?优秀的架构胜过一万次的调优这个问题很容易理解,一个单节点(一台应用服务器+一台数据库服务器)的系统架构,任凭你使出浑身解数来调优也不可能让系统达到百万级并发,别说百万级了,上万并发都不可能。不说其他的,在一个性能相对不错的物理机上,mysql最多也就能承载3500-4500的QPS,你说你能调优调到上万并发??在目前来看如果不借助于其他组件或者其他技术手段是不太可能的。首先大家要明白一个最底层的逻辑,所有的性能问题归根结底绝大多数都是要解决IO的读写性能问题。我们在线
2020-06-04 19:38:50
358

原创 【练技术】如何通过精研线程模型,cpu调度,内存模型等性能优化核心?
性能优化无非就是线程,cpu调度,以及内存之间的配合,这三者中任何一个达到极限,都会造成系统整体性能下降,甚至瘫痪。线程必然要由cpu调度才能活动起来,那么线程的活动也必须有自己的地盘,那么这个地盘就是内存区域。线程数越多,需要cpu的调度能力越强,需要的内存也就越大,那么线程不可能无限增大,总有个极限,当到达极限之后,系统性能将呈现抛物线形的状态急转往下。所以我们必须不能让cpu等资源达到这个极限值,一般在85%左右就可以了。intel的工程师曾今说过,我们为什么要让cpu达到100%的性能呢,能
2020-06-04 18:46:20
1102

原创 多方面,全访问的剖析Tomcat十大线程和四大通道
tomcat服务器在JavaEE项目中使用率非常高,所以在生产环境对tomcat的优化也变得非常重要了。本专题课在调优压测时我们选择tomcat9,那我们为什么选择9版本呢?因为9的性能更高,更稳定。在源码研究演示过程中我会选择tomcat7,8,9三套源码进行比较演示性能的差异。一、Tomcat配置优化对于tomcat的优化,主要是从2个方面入手,一是,tomcat自身的配置,另一个是tomcat所运行的jvm虚拟机的调优。1、部署安装tomcat91、下载并安装:https:/.
2020-06-03 14:31:19
3857
原创 加密与安全_深入了解哈希算法
哈希算法(Hash)又称摘要算法(Digest)。哈希算法是一种重要的加密算法,其核心思想是将任意长度的数据映射为固定长度的哈希值,这个哈希值通常用于验证数据的完整性、索引数据和加速数据查找。在Java中,hashCode()方法是一种哈希算法的应用。相同的输入一定会得到相同的输出不同的输入大概率得到不同的输出。在实际编程中,我们经常需要根据对象的哈希值来进行数据存储和查找,比如使用哈希表等数据结构。为了确保正确性,如果一个类覆写了equals()方法,就必须同时覆写hashCode()
2025-03-24 08:42:08
1021
原创 加密与安全_探索常用编码算法
在计算机系统中,加密与安全是至关重要的概念。想象一下,当B想要发送一封邮件给A时,邮件可能在传送过程中遭到黑客的窃听,这就需要防止信息泄露。此外,黑客还可能篡改邮件内容,因此A需要确保她能够辨别出邮件是否被篡改。最后,黑客可能会冒充B发送虚假邮件给A,这需要A有能力辨别真伪。防止窃听防止篡改防止伪造计算机加密技术旨在实现上述目标。现代计算机密码学建立在严格的数学理论基础上,并逐渐发展成为一门科学。对于大多数开发者来说,设计安全的加密算法是一项艰巨的任务,验证加密算法的安全性则更加困难。
2025-03-24 08:41:02
988
原创 PKI - 借助Nginx实现_客户端使用CA根证书签发客户端证书
这个命令生成了一个 2048 位长度的 RSA 私钥,并将其保存到文件中。这个私钥将用于后续创建自签名的根证书。这个命令使用上一步生成的私钥 () 来生成一个自签名的根证书。-x509:生成一个自签名的 X.509 格式证书。-new:创建一个新的证书请求。-nodes:不使用密码加密密钥。:指定之前生成的私钥文件作为证书的密钥。:指定证书的主题信息。在这里,表示证书的通用名称 (Common Name) 为client-ca。-days 5000:指定证书的有效期为 5000 天。
2025-03-24 08:39:44
555
原创 PKI - 借助Nginx实现_客户端使用自签证书供服务端验证
自签名证书可以用于验证客户端的身份。通过客户端提供的证书,服务端可以确保连接方是合法的客户端,并且拥有该证书对应的私钥。使用自签名证书的客户端可以与服务端建立加密的通信通道。客户端的证书中包含了公钥,可以用于加密数据传输,保护数据的机密性。通过客户端的证书验证,服务端可以确保与客户端直接通信,防止中间人攻击。如果客户端提供的证书无效或不匹配,服务端会拒绝连接,从而保护通信的安全性。服务端可以根据客户端提供的证书对其进行授权访问。
2025-03-24 08:38:40
590
原创 PKI - 借助Nginx 实现Https_使用CA签发证书
使用 CA 签发的证书可以建立信任关系,客户端可以信任由公认的 CA 颁发的证书,从而确保与服务器之间的通信是安全可靠的。CA 对证书申请者进行身份验证,并在验证通过后签发证书。这样,服务器可以通过 CA 签发的证书来证明自己的身份,确保客户端与合法的服务器进行通信,防止中间人攻击。证书中包含了公钥,可以用于加密通信数据。使用 CA 签发的证书可以保护通信数据的机密性,防止数据被窃取或篡改。证书中包含了数字签名,可以用于验证通信数据的完整性。
2025-03-24 08:37:31
972
原创 PKI - 借助Nginx 实现Https 服务端单向认证、服务端客户端双向认证
作者简介:大家好,我是码炫码哥,前中兴通讯、美团架构师,现任某互联网公司CTO,兼职码炫课堂主讲源码系列专题代表作:《jdk源码&多线程&高并发》,《深入tomcat源码解析》,《深入netty源码解析》,《深入dubbo源码解析》,《深入springboot源码解析》,《深入spring源码解析》,《深入redis源码解析》等联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬。
2025-03-24 08:36:25
801
原创 PKI - 05 证书申请步骤
选择合适的CA:首先,您需要选择一个可信赖的CA,通常是一家商业CA,例如Digicert、Entrust、GlobalSign等,或者是自己组织内部的CA。准备证书请求(CSR):您需要生成一个证书请求(Certificate Signing Request,CSR)。这是一个包含了您的公钥和身份信息(例如组织名称、国家、城市等)的文件。您可以使用各种工具来生成CSR,例如OpenSSL工具或者Web服务器的管理界面。填写申请表格:您需要填写CA提供的证书申请表格,并提供相关的身份和组织信息。
2025-03-19 08:30:00
722
原创 PKI - 02 对称与非对称密钥算法
对称密钥算法和非对称密钥算法是两种常见的加密技术,它们在加密和解密数据时采用不同的方法。对称密钥算法对称密钥算法使用相同的密钥来加密和解密数据。加密者和解密者必须共享相同的密钥。加密速度快,适合大量数据的加密和解密。典型的对称密钥算法包括DES、3DES、AES等。缺点是密钥管理困难,需要安全地共享密钥,并且在传输过程中可能会被窃取。非对称密钥算法非对称密钥算法使用一对密钥,分别是公钥和私钥,用于加密和解密数据。公钥是公开的,任何人都可以使用它来加密数据;
2025-03-19 08:27:39
597
原创 Java - 深入理解加密解密和签名算法
作者简介:大家好,我是码炫码哥,前中兴通讯、美团架构师,现任某互联网公司CTO,兼职码炫课堂主讲源码系列专题代表作:《jdk源码&多线程&高并发》,《深入tomcat源码解析》,《深入netty源码解析》,《深入dubbo源码解析》,《深入springboot源码解析》,《深入spring源码解析》,《深入redis源码解析》等联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬。
2025-03-18 08:15:08
839
原创 PKI - 一文读懂SM1、SM2、SM3、SM4等国密算法
国密即国家密码局认定的国产密码算法。主要有SM1,SM2,SM3,SM4。密钥长度和分组长度均为128位。国密算法是指国家密码管理局认定的一系列国产密码算法,包括SM1-SM9以及ZUC等。其中SM1、SM4、SM5、SM6、SM7、SM8、ZUC等属于对称密码,SM2、SM9等属于公钥密码 (非对称加密)SM3属于单向散列函数。目前我国主要使用公开的SM2、SM3、SM4作为商用密码算法。其中SM1、SM7算法不公开,调用该算法时,需要通过加密芯片的接口进行调用。
2025-03-18 08:14:14
1148
原创 PKI - 数字签名与数字证书
SSL是一种安全协议,用于在网络传输中提供数据加密、身份验证和完整性保护。它基于传输层协议(如TCP),并为其提供加密和安全功能。对称加密和非对称加密对称加密:使用相同的密钥进行加密和解密。非对称加密:使用两个密钥:公钥用于加密,私钥用于解密。数字签名:用于验证数据的完整性和身份验证。发送方使用私钥对数据签名,接收方使用公钥验证签名。数字证书:由可信第三方颁发的电子文档,其中包含有关个人或组织的身份信息以及公钥。SSL协议。
2025-03-18 08:13:27
571
原创 Java - OpenSSL与国密OpenSSL
普通OpenSSL主要支持国际通用的加密算法,而国密OpenSSL在保持对这些算法支持的同时,增加了对中国国家密码管理局规定的国产密码算法的支持。代表作:《jdk源码&多线程&高并发》,《深入tomcat源码解析》,《深入netty源码解析》,《深入dubbo源码解析》,《深入springboot源码解析》,《深入spring源码解析》,《深入redis源码解析》等。联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬。
2025-03-18 08:12:14
1021
原创 GmSSL - GmSSL的编译、安装和命令行基本指令
释放21集全网最深ConcurrentHashMap的vip视频,复现每一行源码Java - 一文读懂SM1、SM2、SM3、SM4等国密算法Java - OpenSSL与国密OpenSSLJava - 数字签名与数字证书下载源代码(zip): https://github.com/guanzhi/GmSSL/archive/master.zip解压缩至当前工作目录Linux平台安装之后可以执行gmssl命令行工具检查是否成功快速
2025-03-18 08:11:29
289
原创 PKI - 01 散列(Hash)函数
PKI(Public Key Infrastructure,公钥基础设施)证书系统是一种用于保护网络通信安全的技术。它基于非对称加密算法,使用一对密钥:公钥和私钥。想象一下,你有一个保险柜,里面有两把钥匙:一把是公钥,可以给别人,另一把是私钥,只有你知道。当别人想给你发送私密信息时,他们可以使用你的公钥对信息进行加密,然后将加密后的信息发送给你。而你收到信息后,可以使用你的私钥解密,因为只有你拥有私钥。PKI证书系统就是管理和分发这些公钥和私钥的系统。
2025-03-18 08:10:44
866
原创 一文说清OpenCL框架
OpenCL(Open Computing Language,开放计算语言):从软件视角看,它是用于异构平台编程的框架;从规范视角看,它是异构并行计算的行业标准,由Khronos Group来维护;异构平台包括了CPU、GPU、FPGA、DSP,以及最近几年流行的各类AI加速器等;OpenCL包含两部分:1)用于编写运行在OpenCL device上的kernels的语言(基于C99);2)OpenCL API,至于Runtime的实现交由各个厂家,比如Intel发布的。
2025-03-17 08:15:54
805
原创 Linux中断子系统(四)-Workqueue
Workqueue工作队列是利用内核线程来异步执行工作任务的通用机制;Workqueue工作队列可以用作中断处理的机制,利用进程上下文来执行中断处理中耗时的任务,因此它允许睡眠,而Softirq和Tasklet在处理任务时不能睡眠;在中断处理过程中,或者其他子系统中,调用workqueue的调度或入队接口后,通过建立好的链接关系图逐级找到合适的worker,最终完成工作任务的执行;
2025-03-17 08:14:59
885
原创 Linux中断子系统(三)-softirq和tasklet
中断子系统中有一个重要的设计机制,那就是Top-half和Bottom-half,将紧急的工作放置在Top-half中来处理,而将耗时的工作放置在中来处理,这样确保Top-half能尽快完成处理,那么为什么需要这么设计呢?ARM处理器在进行中断处理时,处理器进行异常模式切换,此时会将中断进行关闭,处理完成后再将中断打开;如果中断不分上下半部处理,那么意味着只有等上一个中断完成处理后才会打开中断,下一个中断才能得到响应。
2025-03-17 08:13:51
994
原创 Linux中断子系统(二)-通用框架处理
之前文章里讲到了底层硬件GIC驱动,以及Arch-Specific的中断代码,本文将研究下通用的中断处理的过程,属于硬件无关层。当然,我还是建议你看一下上篇文章。用户是怎么使用中断的(中断注册外设触发中断信号时,最终是怎么调用到中断handler的(中断处理从上到下:围绕irq_desc中断描述符建立好连接关系,这个过程就包括:中断源信息的解析(设备树),硬件中断号到Linux中断号的映射关系、irq_desc结构的分配及初始化(内部各个结构的组织关系)、中断的注册(填充irq_desc。
2025-03-17 08:12:37
897
原创 Linux中断子系统(一)-中断控制器及驱动分析
从这篇文章开始,来聊一聊中断子系统。中断是处理器用于异步处理外围设备请求的一种机制,可以说中断处理是操作系统管理外围设备的基石,此外系统调度、核间交互等都离不开中断,它的重要性不言而喻。硬件层:最下层为硬件连接层,对应的是具体的外设与SoC的物理连接,中断信号是从外设到中断控制器,由中断控制器统一管理,再路由到处理器上;硬件相关层:这个层包括两部分代码,一部分是架构相关的,比如ARM64处理器处理中断相关,另一部分是中断控制器的驱动代码;
2025-03-17 08:06:52
914
原创 Linux虚拟化KVM-Qemu分析(十一)之virtqueue
汪汪汪,最近忙成狗了,一下子把我更新的节奏打乱了,草率的道个歉。前边系列将Virtio Device和Virtio Driver都已经讲完,本文将分析virtqueue;virtqueue用于前后端之间的数据交换,一看到这种数据队列,首先想到的就是ring-buffer,实际的实现会是怎么样的呢?
2025-03-14 08:58:59
641
原创 Linux虚拟化KVM-Qemu分析(十)之virtio驱动
前篇文章讲完了Qemu中如何来创建Virtio Device,本文将围绕Guest OS中的Virtio Driver来展开;核心模块为virtio和virtqueue,其他高层的驱动都是基于核心模块之上构建的;显然,本文会延续这个系列,继续分析virtio-net驱动,重心在整体流程和框架上,细节不表;virtio-net,又是一个virtio设备,又是一个PCI设备,那么驱动会怎么组织呢?带着问题上路吧。
2025-03-14 08:58:25
852
原创 Linux虚拟化KVM-Qemu分析(九)之virtio设备
Virtqueue;:前端部分,处理用户请求,并将I/O请求转移到后端;:后端部分,由Qemu来实现,接收前端的I/O请求,并通过物理设备进行I/O操作;Virtqueue:中间层部分,用于数据的传输;:交互方式,用于异步事件的通知;想在一篇文章中写完这四个模块,有点,所以,看起来又是一个系列文章了。本文先从Qemu侧的virtio device入手,我会选择从一个实际的设备来阐述,没错,还是上篇文章中提到的网络设备。
2025-03-14 08:57:53
837
原创 Linux虚拟化KVM-Qemu分析(八)之virtio初探
作者简介:大家好,我是码炫码哥,前中兴通讯、美团架构师,现任某互联网公司CTO,兼职码炫课堂主讲源码系列专题代表作:《jdk源码&多线程&高并发》,《深入tomcat源码解析》,《深入netty源码解析》,《深入dubbo源码解析》,《深入springboot源码解析》,《深入spring源码解析》,《深入redis源码解析》等联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬。
2025-03-14 08:57:14
791
使用HttpUnit进行集成测试使用HttpUnit进行集成测试
2010-09-19
Eclipse插件开发系列.pdf
2009-12-16
Java路径问题最终解决方案(转) - lily的日志 - 网易博客.mht
2009-12-16
Oracle18个详细实验.pdf
2009-12-16
精通Oracle.10g.Pl.SQL编程.pdf
2010-09-29
ORBStudio777.zipORBStudio777.zip
2010-09-21
CORBA.rarCORBA.rarCORBA.rar
2010-09-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人