首页>>后端>>Spring->spring

spring

时间:2023-11-29 本站 点击:0

一.源码获取

由于spring-framework-5.2.0.RELEASE 源码需要从国外下载,下载速度过慢,这里直接提供百度连接让大家下载

链接:https://pan.baidu.com/s/1bOYb99G16HWVYQoH10m8uw

提取码:wqbc --来自百度网盘超级会员V6的分享

二.源码构建及编译

1.将源码导入到idea中,你将会看到如下项目结构

此项目中已经包含.gradle工具,并且源码是已经编译好的,可以直接使用.亲测(Mac和Win10)

2.源码编译

从本连接获取到的源码中,已经是编译完成好的,无需再次编译.又考虑到大家以后会需要新的版本spring源码,所以呢,这里将会把源码编译的整个步骤介绍给大家.授人以鱼不如授人以渔嘛.

1)阿里镜像导入

a.点击项目,在跟目录找到build.gradle文件.在buildscript{}中添加一下这段话:

repositories{maven{url'https://maven.aliyun.com/nexus/content/groups/public/'}maven{url'https://maven.aliyun.com/nexus/content/repositories/jcenter'}}

效果图为:

b.在dependencyManagement{}中将

repositories{mavenCentral()maven{url"https://repo.spring.io/libs-spring-framework-build"}}

替换为:

repositories{maven{url'https://maven.aliyun.com/nexus/content/groups/public/'}maven{url'https://maven.aliyun.com/nexus/content/repositories/jcenter'}mavenCentral()maven{url"https://repo.spring.io/libs-spring-framework-build"}}

效果图如下:

2)在idea的控制台中输入以下这段话:

gradlew.bat :spring-oxm:compileTestJava

可能需要点时间,效果图如下:

编译完成后,效果图如下:

如出现:BUILD SUCCESSFUL in 1m 50s 提示.那么就要恭喜你了,spring源码编译到此结束了,准备踏上你的源码阅读环节吧!!!!

三.源码断点操作

1.构建gradle项目

由于spring源码中是使用gradle构建项目的.所以呢,就需要使用gradle创建一个属于我们自己的项目了.莫要担心自己没有学过gradle,所有放弃了以下步骤.这里呢,我分析给大家一种基于idea工具构建gradle项目的方法,零基础也ok.想想自己之前maven0基础不也创建出来maven项目了嘛

1)右键根目录->选择New->点击Moudle...,效果图如下:

2)选择Gradle->勾选java->点击Next.效果图如下:

3)Parent 选择当前父项目 spring ->Name为你的gradle项目名 ->Location为你的项目路径,默认在当前根目录下.效果图如下:

4)当在跟目录下,发现自己所创建的新项目时,恭喜你构建gradle项目成功.如图所示:

2.源码断点调试

1)gradle 依赖

gradle和maven一样,当构建项目成功时.要引入需要的gradle依赖.我们是要阅读spring源码,所以需要引入spring的依赖喽

dependencies{testCompilegroup:'junit',name:'junit',version:'4.12'compile(project(":spring-beans"))compile(project(":spring-core"))compile(project(":spring-aop"))compile(project(":spring-context"))}

如图所示:

2)Main类构建

这里介绍的是使用,AnnotationConfigApplicationContext注解的方式去读配置文件,

至于使用ClassPathXmlApplicationContext以xml的方式去配置文件,感兴趣的小伙伴可以自己试试哈.

a.SpringConfig.class类

@ConfigurationpublicclassSpringConfig{@Bean("user")publicUsergetUser(){returnnewUser("xxj",30);}}

b.User.class类

publicclassUser{privateStringuserName;privateIntegerage;publicUser(){}publicUser(StringuserName,Integerage){this.userName=userName;this.age=age;}publicStringgetUserName(){returnuserName;}publicvoidsetUserName(StringuserName){this.userName=userName;}publicIntegergetAge(){returnage;}publicvoidsetAge(Integerage){this.age=age;}}

c.ApplicationAnnotation.class

publicclassApplicationAnnotation{publicstaticvoidmain(String[]args){ApplicationContextcontext=newAnnotationConfigApplicationContext(SpringConfig.class);Objectuser=context.getBean("user");System.out.println(user);}}

3)断点演示

到这里为止呢,spring源码阅读之前的准备工作,基本上算是完成,,接下来呢.就是断点调试源码阶段了.

Ctrl+F7,进入:

由此就是spring源码的入口了,spring-framework-5.2.0.RELEASE 源码编译 阅读以及断点调试到此也就结束了。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:/Spring/337.html