![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
文章平均质量分 82
阿......嚏
Single hand that wipes tears during failures is much better than countless hands that come together to clap on success。
展开
-
2、RocketMQ之生产实例源码分析原理
DefaultMQProducer是DefaultMQProducerImpl的包装类,开放给开发人员使用,DefaultMQProducer中的几乎所有的方法内部都是由DefaultMQProducerImpl实现的。这个是典型的门面模式设计模式。原创 2023-02-16 14:43:10 · 127 阅读 · 0 评论 -
2.Seata之AT模式资源管理器RM
RM源码分析初稿原创 2023-02-06 19:48:02 · 455 阅读 · 0 评论 -
1.Seata之事务管理器TM源码分析
核心监听器:BootstrapApplicationListener。原创 2023-02-03 17:51:51 · 193 阅读 · 0 评论 -
1.Springboot之ApplicationContext&Listener&Config
ApplicationContextInitializer 主要用在容器刷新之前调用改接口实现类的 initialize 方法,并将 ConfigurableApplicationContext 类的实例作为参数传入。通常用于根据应用上下文进行处理的编程中。且实现类可以通过 Ordered 接口或 @Order 注解 进行多个 Initializer 的排序。原创 2023-02-02 11:24:31 · 458 阅读 · 0 评论 -
2、Springboot之ApplicationContext&Listener&Config
针对上述配置类信息,MultiValueMap中key分别为org.springframework.boot.env.PropertySourceLoader,其对应的value为对应取值的list集合。【key通常为接口、value为接口全部子类生成的list集合】例如:对于SpringBoot预先加载spring-boot.jar、spring-beans.jar包下spring.factories文件。针对上述spring.factories文件,其MultiValueMap中key元素个数为3。原创 2023-02-01 21:41:51 · 426 阅读 · 0 评论 -
路径path相关模式
private String getMatchingPattern(String pattern, String lookupPath) { if (pattern.equals(lookupPath)) { return pattern; }//判断前缀索引 if (this.useSuffixPatternMatch) {//是否配置了扩展符以及当前URL是否是以”.“结尾 if (!this.fileExtensions.isEmpty() &&...原创 2021-01-30 19:12:34 · 419 阅读 · 1 评论 -
SpringBoot之事务源码解析
初始化bean过程中涉及的beanPostProcessor之InfrastructureAdvisorAutoProxyCreator作为服务启动过程中解析@Transaction注解注释的方法或者类。通过调用其InfrastructureAdvisorAutoProxyCreator之After相关的初始化后置处理器。:有资格的;合格的;具备条件的。原创 2022-10-16 04:21:12 · 2443 阅读 · 0 评论 -
mybatis之结果映射源码分析
PageHelper插件处理分页总数时,需要重新初始化MappedStatement。原创 2022-10-08 13:07:14 · 311 阅读 · 0 评论 -
tomcat之源码分析
catalina就是Tomcat服务器使用的 Apache实现的servlet容器的名字。Tomcat的核心分为3个部分:(1)Web容器:处理静态页面。(2)catalina:一个处理servlet的容器。(3)JSP容器:把jsp页面翻译成一般的servlet。Catalina连接器负责将一个请求与容器相连。工作包括为它接收到的每个HTTP请求创建一个request对象和一个response对象。然后将处理过程交给容器。容器从连接器中接收到request对象和response对象,并负责调原创 2022-01-21 10:37:36 · 2455 阅读 · 0 评论 -
Spring之Conditonal注解
扫描注解类return scanner.doScan(StringUtils.toStringArray(basePackages));...//获取候选类时判断是否需要排除Set<BeanDefinition> candidates = findCandidateComponents(basePackage);...// 结果true:将候选类 添加到集合 Set<BeanDefinition> candidates = new LinkedHashSet<>原创 2021-12-27 11:10:58 · 231 阅读 · 0 评论 -
5.Springboot解析启动类之finishBeanFactoryInitialization
遍历容器工厂类DefaultListableBeanFactory中属性beanDefinitionNames,创建对应的bean实例。原创 2021-10-18 16:49:10 · 212 阅读 · 0 评论 -
Mysql之InnoDB多版本并发控制(MVCC)
开启事务后,执行一条update、insert以及delete的sql语句就会生成一个事务id。MVCC(Mutil-Version Concurrency Control),就是多版本并发控制。MVCC 是一种并发控制的方法,一般在数据库管理系统中,实现对数据库的并发访问。在Mysql的 InnoDB 引擎中就是指在已提交读(READ COMMITTD)和可重复读(REPEATABLE READ)这两种隔离级别下的事务对于SELECT操作(同样会开启自己的事务)会访问版本链中的记录的过程。这就原创 2021-03-19 18:20:01 · 35 阅读 · 1 评论 -
1、SpringBoot解析启动类之源码分析
是一种服务发现机制,JDK自带有来实现这种机制,当然更为出名的是Spring的(Dubbo也有自己的SPI实现哦),具体实现方式上都大同小异。第二步:parse方法解析组件添加到configurationClasses集合中。Springboot 自动化配置。AutoConfigurationImportSelector注解的解析。try {// 启动类执行else {...原创 2021-01-31 21:10:59 · 890 阅读 · 1 评论 -
Spring之IOC容器
IOC容器DefaultSingletonBeanRegistry中singletonObjects就是自定义Bean最终的IOC容器。入口:AbstractApplicationContext–>finishBeanFactoryInitialization(beanFactory)DefaultListableBeanFactory/** Map of bean definit...原创 2021-01-30 23:09:36 · 477 阅读 · 1 评论 -
SpringMVC之ViewResolver&theme&FlashMapManager
创建Spring MVC项目 project->maven->选择archetype apach...webapp;本地安装tomcat,包括环境变量,启动后localhost:8080正常访问;endit configuration->tomcat server->tab server->application server->URL->删除默认的B..............................原创 2020-04-19 23:08:22 · 177 阅读 · 1 评论 -
Spring之AOP源码解析
三、面向切面的 Spring切面提供了取代继承和委托的另一种可选方案,而且在很多场景下更清晰简洁。在使用面向切面编程时,我们仍然在一个地方定义通用功能,但是可以通过声明的方式定义这个功能要以何种方式在何处应用,而无需修改受影响的类。横切关注点可以被模块化为特殊的类,这些类被称为切面( aspect )。这样做有两个好处:首先,现在每个关注点都集中于一个地方,而不是分散到多处代码中;其次,服务模块...原创 2020-05-07 18:36:11 · 470 阅读 · 1 评论