首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏Java架构师必看

    spring源码分析9

    spring源码分析9 强烈推介IDEA2020.2破解激活,IntelliJ

    48920发布于 2021-04-13
  • 来自专栏漫漫架构路

    Spring源码学习笔记(9)——AOP

    Spring源码学习笔记(9)——AOP 一. 基于注解的AOP开发 AOP的定义及一些术语相信大家已经很熟悉了,这里不再赘述。下面演示基于注解的Spring AOP开发。 ComponentScan @EnableAspectJAutoProxy public class MainConfig { } 在配置类上使用@EnableAspectJAutoProxy注解开启AOP自动代理,Spring AOP源码分析 在上面的实例中,使用@EnableAspectJAutoProxy注解就可以开启自动代理功能,那么该功能是如何实现的呢? 首先看@EnableAspectJAutoProxy源码: @Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) @Documented AnnotationAwareAspectJAutoProxyCreator是Spring AOP的一个重要组件,下面对其进行分析: 先简单看一下AnnotationAwareAspectJAutoProxyCreator

    58220发布于 2020-09-03
  • 来自专栏Coder小黑

    Spring5 源码学习 (9) doGetBean 概述

    AbstractBeanFactory#doGetBean AbstractBeanFactory#doGetBean源码如下: protected <T> T doGetBean(final String @DependsOn 通过源码可以知道,Spring 在创建 Bean 之前,首先会创建当前 Bean 所有依赖的 Bean。 在 Spring 中有这个一个注解:@DependsOn。这个注解一般用的很少(碰巧最近项目中用到了这个注解,哈哈哈)。 中存在着多种 Scope,Spring 会根据不用的 Scope 选用不同的初始化方式。 . ---- 源码注释 GITHUB 地址:https://github.com/shenjianeng/spring-code-study

    67220发布于 2019-12-18
  • 来自专栏迁移内容

    Spring源码:Spring源码阅读环境搭建

    本篇内容包括:Mac 环境下 gradle 的安装和配置、源码克隆、新建测试类,测试Spring源码 等内容! GitHub 个人仓库 1、Fork GitHub 中的 Spring 官方源码到自己的 GitHub 仓库 # fork源码到个人GitHub仓库 2、同步 GitHub 个人仓库 Spring 源码到 Gitee 个人仓库 # 打开码云gitee新建仓库,点击从其他网站已有仓库导入 # 输入自己GitHub中Spring源码仓库地址URL创建gitee的Spring个人源码仓库 Ps:如果已经配置了 /gradlew :spring-oxm:compileTestJava 5、打开 IDEA 导入 Spring 源码 # 打开 IDEA 选择 File -> New -> Project from Spring源码 1、新建 my-test 模块进行源码测试 # 新建 module # module 命名 my-test 2、修改 build.gradle 文件 模块创建好之后只有一个build.gradle

    1.2K20编辑于 2022-12-01
  • 来自专栏卯金刀GG

    【spring源码解析】spring源码报错问题

    下载spring5.0.4源码 用gradle 编译生成了 spring-jcl spring-core spring-beans 3个eclipse 项目 但是 spring-core 下面的一个

    1.7K20发布于 2019-07-25
  • 来自专栏鳄鱼儿的技术分享

    Spring源码学习,Spring Framework源码编译

    Spring Framework源码编译 博主本地java版本为 java version "11.0.10" 拉取源码 选定存放路径直接只用git clone拉取最新源码 git clone https ://github.com/spring-projects/spring-framework.git 目前最新RELEASE版本是5.2.18,编译前需要将tag切换至这个版本。 源码命令行编译测试 使用以下两条指令进行编译测试 ./gradlew :spring-oxm:compileTestJava // 官方建议 . ApplicationContext获取自定义的Bean package com.ber.service; ​ /** * @author ber * @version 1.0 * @date 21/11/9 import org.springframework.stereotype.Service; ​ /** * @author ber * @version 1.0 * @date 21/11/9

    49210编辑于 2024-05-21
  • 【源码】spring源码解析

    在 Spring 框架中,核心模块是 Spring Core,它提供了 IoC(Inversion of Control)容器和依赖注入的支持。 在案例分析中,我们可以以一个简单的示例来解析 Spring 框架的源码。假设我们有一个简单的 Web 应用程序,需要实现用户管理的功能,包括用户的增删改查。 然后,我们需要配置 Spring MVC 框架的相关配置。 以上是一个简单的 Spring MVC 应用程序的案例分析。通过这个案例,我们可以深入理解 Spring 框架的工作原理,包括 IoC 容器的实现、依赖注入的过程、AOP 的实现等。 同时,我们也可以通过调试源码的方式来进一步了解 Spring 框架的内部实现细节。

    28710编辑于 2025-08-29
  • 来自专栏爪哇缪斯

    (六)Spring源码解析:Spring AOP源码解析

    但是为了配置简便,Spring使用了自定义配置来帮助我们自动注册AnnotationAwareAspectJAutoProxyCreator,注册流程如下所示: public static BeanDefinition ) continue; // isEligibleBean方法默认返回true // 官方注释:我们必须小心不要急切地实例化bean,因为在这种情况下,它们将被Spring 步骤7】可以对proxyFactory进行定制化操作,默认是空方法; 【步骤8】通过调用proxyFactory的setFrozen(...)方法,来控制代理工厂被配置之后,是否还允许修改通知; 【步骤9】 更多技术干货,欢迎大家关注公众号“爪哇缪斯” ~ \(^o^)/ ~ 「干货分享,每天更新」 往期推荐 (五)Spring源码解析:ApplicationContext解析 (四)Spring源码解析 :bean的加载流程 (三)Spring源码解析:自定义标签解析 (二)Spring源码解析:默认标签解析 (一)Spring源码解析:容器的基本实现

    1.5K30编辑于 2023-09-06
  • 来自专栏springboot

    Spring源码解析(十):spring整合mybatis源码

    整合mybatis原理 根据上面spring整合mybatis的配置类的信息,要想清楚Spring是如何整合Mybatis的,我们只要弄明白两点 @MapperScan注解的作用 SqlSessionFactoryBean Spring跟Mybatis整合 // 最重要的事情就是将Mybatis生成的代理对象交由Spring来管理 // 实现这个功能的就是这个MapperFactoryBean Class<? 源码解析(二):bean容器的创建、默认后置处理器、扫描包路径bean 核心内容就是扫描指定包将符合要求Class注册bean定义 # ClassPathBeanDefinitionScanner类方法 return session; } 3.4、MapperFactoryBean的checkDaoConfig方法 创建 Mapper接口代理对象初始化时候,会调用此方法 这里就会进入 mybatis 的源码了 Mybatis源码解析(八):Mapper代理原理 // 之前分析过了,这个方法会在MapperFactoryBean进行初始化的时候调用 protected void checkDaoConfig()

    51511编辑于 2025-01-21
  • 来自专栏杨不易呀

    Spring框架源码分析之Spring源码编译

    Spring 源码环境搭建Spring 源码下载地址:https://github.com/spring-projects/spring-frameworkGradle 下载地址:https://gradle.org /releases/查看 Spring 源码中使用的 Gradle 版本,打开下载好的 Spring 源码解压,然后进入到如下图所示的目录当中:图片打开 gradle-wrapper.properties File → New → Project from Existing Sources,选择源码包路径下的 build.gradle 文件完成源码导入如下图:图片图片idea 配置 gradle依次点击 * @date Created in 2021/9/29 029 11:39 * @description **/public interface UserService { /** * 显示 * @program spring * @date Created in 2021/9/29 029 11:42 * @description **/public class SpringTest {

    1.1K110编辑于 2023-09-25
  • 来自专栏JAVA体系

    【Spring源码】Spring Event事件

    今天就来讲一下Spring的事件机制。 2、什么是Spring Event? Spring框架中的事件是一种观察者设计模式的实现,用于在应用程序中处理各种状态变化。 Spring的事件机制允许对象在状态发生变化时发布事件,其他对象则可以订阅这些事件并在事件发生时执行特定的操作。 3、基本使用 Spring Event的使用基本有以下几个步骤:定义事件,发布事件,监听事件。 doSomething(); } } 4、Spring Event是同步还是异步? 默认情况下 Spring Event是同步执行的。你怎么这么确定?我们先来演示下上面的demo。 4.1、源码实现 如果还是不信?

    1.1K10编辑于 2024-01-25
  • 来自专栏Devops专栏

    9-Spring 整合 RabbitMQ

    9-Spring 整合 RabbitMQ 1. 搭建生产者工程 1.1 创建工程 创建一个空的 maven 工程 spring-rabbitmq-producer: 1.2. \src\main\resources\spring\spring-rabbitmq.xml 整合配置文件; <? --定义广播交换机中的持久化队列,不存在则自动创建--> <rabbit:queue id="<em>spring</em>_fanout_queue_1" name="<em>spring</em>_fanout_queue_1 --定义广播交换机中的持久化队列,不存在则自动创建--> <rabbit:queue id="spring_fanout_queue_2" name="spring_fanout_queue_2 \src\main\resources\spring\spring-rabbitmq-consumer.xml 整合配置文件; <?

    63640编辑于 2022-11-22
  • 来自专栏golang算法架构leetcode技术php

    golang源码分析(9)调度

    现在已经有太多的文章来介绍goroutine的用法,在这里,我们从源码的角度来看看其内部实现。

    65520编辑于 2022-08-02
  • 来自专栏kk大数据

    Spark 源码(9)- Worker 启动 Executor 源码阅读

    上一次阅读到 Master 调用 schedule() 方法,遍历 waitingApps,为每个程序决定启动多少 Executor,为每个 Executor 分配多少资源,有了这些信息之后,给 Worker 发送了一个 LaunchExecutor 消息,Worker 开始处理。

    95720发布于 2021-11-16
  • golang源码分析:langchaingo(9)

    前面介绍了单独的匹配,如果把这个匹配过程接入到LLM,就是完整的RAG,即检索增强生成。我们先看看上一个例子还没介绍的最后几行代码

    16610编辑于 2026-03-18
  • 来自专栏JAVA体系

    【Spring源码】Spring事务原理

    2、Spring事务基本概念 2.1、基础配置 我们先来回顾一下Spring事务的基础配置信息,以下由ChatGPT给我们提供的相关资料: 2.1.1、Spring事务的基础配置 1、问:Spring事务的基础配置 而是交由Spring自己完成。那么Spring使用事务的方式有哪些呢?在 Spring 中,我们可以通过声明式事务管理和编程式事务管理两种方式来管理事务。 4、源码看事务 Spring中通过注解@EnableTransactionManagement开启事务,那么我们从这个注解开始入手: @Target(ElementType.TYPE) @Retention exception overridden by commit exception", ex); throw ex2; } } } } 至此,基本上源码的大致事务处理流程就已经走完 5、事务失效 前面讲到了一些Spring相关的基础理论知识,以及源码是如何实现的。

    92110编辑于 2024-01-25
  • 来自专栏纸上得来终觉浅

    libuv源码阅读(9)--interfaces

    先看用例源码: #include <stdio.h> #include <uv.h> int main() { char buf[512]; uv_interface_address_t

    87310发布于 2021-03-12
  • 来自专栏Postgresql源码分析

    Postgresql源码(9)Xlog注册

    注册数据页面相关信息 注册数据页面相关信息 注册数据页面相关信息 一个页面用一个槽位 一个页面用一个槽位 一个页面用一个槽位 一个槽位对一个registered_buffer 一个槽位对一个registered_buffer 一个槽位对一个registered_buffer

    49020编辑于 2022-07-16
  • 来自专栏golang算法架构leetcode技术php

    golang源码分析:cayley(9)

    中间使用到了goja解析器,它的作用是在golang环境中翻译执行javascript,因为我们的gizmo采用的是javascript语法。

    43020编辑于 2023-08-09
  • golang源码分析 :gopls(9)

    最后我们来到了第三部分featureCommands,也是所有命令的大头,这里一共初始化了23个命令。我们首先看下第一个callHierarchy

    19710编辑于 2026-03-18
领券