
开源框架源码剖析
文章平均质量分 75
1. 持久层框架设计实现及MyBatis源码分析
2. IoC容器设计实现及Spring源码分析
3. MVC框架设计实现及SpringMVC源码分析、通用数据操作接口设计及SpringData 接口规范
4. 约定优于配置设计范式及Spring Boot源码剖析
穿城大饼
离离原上草,一岁一枯荣。
野火烧不尽,春风吹又生。
远芳侵古道,晴翠接荒城。
又送王孙去,萋萋满别情。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Mybatis-plus的通用Service
mybatis-plus提供的通用Service原创 2022-09-14 19:40:06 · 1151 阅读 · 0 评论 -
动态代理:jdk和cglib区别
动态代理:jdk和cglib关键词jdk:代理和被代理实现共同接口cglib:被代理是代理的父类cglibjdk原创 2021-12-15 10:34:05 · 502 阅读 · 0 评论 -
Spring生命周期
Spring生命周期关键词一、生命周期原创 2021-11-12 16:33:13 · 293 阅读 · 0 评论 -
环境搭建:Windows系统下Nacos集群搭建
Windows系统下nacos集群搭建环境准备名称版本下载地址nacosNACOS 1.2.0MySQLmysql Ver 14.14 Distrib 5.5.57, for Win64 (AMD64)JDK1openjdk version “11.0.5-BellSoft” 2019-10-15二、集群环境搭建2.1 下载Nacos,解压三份2.2 修改Nacos集群端口进入nacos下的conf目录下将cluster.conf.exam原创 2021-10-15 12:23:48 · 1867 阅读 · 2 评论 -
实战:自定义简易版SpringBoot
实战:自定义简易版SpringBoot一、功能要求自定义简易版SpringBoot,实现SpringBoot MVC及内嵌Tomcat启动、DispatcherServlet注册和组件扫描功能程序通过main方法启动,可以自动启动tomcat服务器可以自动创建和加载DispatcherServlet组件到ServletContext中可以自动通过@ComponentScan扫描Controller等组件Controller组件可以处理浏览器请求,返回响应结果二、实现思路分析传统Sp原创 2021-10-11 12:20:25 · 710 阅读 · 0 评论 -
SpringBoot热部署环境搭建和原理分析
SpringBoot热部署环境搭建插件会监控 classpath的资源变化对类加载采用了两种类加载器(只重启开发人员编写的代码部分)一、 现象开发项目过程中,修改了某些代码后需要本地验证时,需要重启本地服务进行验证。如果项目庞大的话是需要较长时间的,Spring开发团队为我们带来了一个插件:spring-boot-devtools,很好的解决了本地验证缓慢的问题。二、热部署搭建1.添加spring-boot-devtools热部署依赖启动器在Spring Boot项目进行热部署测原创 2021-09-28 15:05:19 · 447 阅读 · 0 评论 -
实战:基于自定义注解实现自定义框架Spring
实战:基于自定义注解实现自定义框架Spring一、自定义注解介绍1.1 通过反射API,可以判断一个类、接口、字段或者方法上是否有注解Class类(java.lang包下)中提供了一些方法用于反射注解//返回指定的注解getAnnotation//判断当前元素是否被指定注解修饰isAnnotationPresent//返回所有的注解getAnnotations例如:判断一个类上是否有注解@MyService("myTransferServiceImpl")public clas原创 2021-09-13 15:59:16 · 410 阅读 · 0 评论 -
SpringMVC子父容器源码剖析
SpringMVC子父容器源码剖析(未完待续)原创 2021-07-15 21:33:43 · 196 阅读 · 1 评论 -
Spring事件机制Event源码解析(未完待续)
Spring事件机制Event源码解析(未完待续)原创 2021-07-15 20:46:46 · 135 阅读 · 0 评论 -
Spring中AOP源码剖析
Spring中AOP源码剖析原创 2021-07-13 19:49:19 · 152 阅读 · 0 评论 -
Spring循环依赖源码剖析
Spring循环依赖源码剖析一、场景介绍二、整理执行流程总结三、源码分析编写测试类 /** * 测试循环依赖 */ @Test public void testCyclicDependence(){ ApplicationContext applicationContext = new ClassPathXmlApplicationContext("classpath:applicationContext-cyclicDependence.xml"); ABean a原创 2021-07-09 17:56:03 · 685 阅读 · 2 评论 -
spring-framework-5.1.x 源码编译 环境搭建 [ idea:2020.1 ]
spring-framework-5.1.x 源码编译 环境搭建 [ idea:2020.3.1 ]一. Gradle下载与安装二. 下载spring源码GitHub 搜索springframework 版本号 5.1.x三. idea导入spring源码build.gradlerepositories {maven { url “https://maven.aliyun.com/repository/spring-plugin” }maven { url “https://原创 2021-04-18 06:11:22 · 5273 阅读 · 5 评论 -
简易版Dubbo方法级性能监控(实现TP90、TP99)
一、具体要求在真实业务场景中,经常需要对各个业务接口的响应性能进行监控(常用指标为:TP90、TP99)通过扩展Dubbo的Filter(TPMonitorFilter),完成简易版本 Dubbo 接口方法级性能监控,记录下TP90、TP99请求的耗时情况要求说明1提供一个Dubbo服务,提供3个方法(eat、sleep、beatBeanBean),每方法都实现了随机休眠0-100ms2编写一个消费端程序,不断调用Dubbo服务的3个方法(建议利用线程池进行并行调用,原创 2021-06-02 21:20:14 · 1456 阅读 · 2 评论 -
zookeeper3.5.4源码环境搭建
zookeeper3.5.4源码环境搭建1. 准备工作渠道地址官网zk源码下载地址网盘zk源码下载地址 提取码:5555注意:因为zookeeper是由ant来构建的,所以需要使用ant命令来转换成工程,然后导入idea(当前提供的下载地址无需进行转换操作,下载完毕后直接导入idea即可)2. idea导入源码3. 服务器端启动程序配置启动服务端运行主类org.apache.zookeeper.server.QuorumPeerMain,将zoo.cfg原创 2021-06-01 14:57:48 · 569 阅读 · 1 评论 -
springboot2.2.9源码搭建
1 版本选择软件版本地址maven3.6.1下载地址, 提取码:1234java11.0.5下载地址, 提取码:1234idea2020.3官网地址springboot2.2.9下载地址 , 提取码:12342 编译源码2.1 进⼊spring-boot源码根⽬录2.2 执⾏mvn命令 // 跳过测试⽤例,会下载⼤量 jar 包(时间会长一些) mvn clean install -DskipTests -Pfast 3 导原创 2021-04-19 19:36:24 · 915 阅读 · 1 评论 -
Idea+Mybatis源码构建
一、将源码安装至本地仓库中切换到你下载的mybatis-parent目录 执行命令:mvn clean install -Dmaven.test.skip=true切换到你下载的mybatis源码目录 执行命令:mvn clean install -Dmaven.test.skip=true报错: pdf插件问题[ERROR] Failed to execute goal org.apache.maven.plugins:maven-pdf-plugin:1.4:pdf (pdf)原创 2021-03-19 17:07:28 · 847 阅读 · 1 评论 -
Spring 常见问题( 持续更新... ... )
Spring 常见问题1. Spring循环依赖相关问题 spring三层缓存的第二层缓存有什么用? 循环依赖为什么要使用三级缓存?二级不能解决么?beanB从三级缓存中获取beanA以后提升到二级缓存 ? 循环依赖涉及二级缓存具体作用是什么,一般不用二级缓存也能实现? 为什么spring无法处理基于构造器的循环依赖问题?Spring利用singletonObjects, earlySingletonObjects, singletonFactories三级缓存去解决循环依赖问题,三个缓存其原创 2020-11-19 15:33:13 · 477 阅读 · 1 评论