spring-framework源碼構建【spring源碼閱讀01】

源碼搭建原因

爲了更好的閱讀 spring-framework 源碼,我們需要把 spring-framework 的源碼工程 clone 下來,這樣我們就可以 修改源碼添加註釋查看源碼 以及 debug

源碼搭建步驟

clone 代碼(5.2.0.BUILD-SNAPSHOT)

  1. 首先我們選用大型同性交友網站 github 進行源碼存儲:spring-framework地址
  2. 我這邊直接將源碼 fork 到自己倉庫,然後 clone 下來源碼,這樣我就可以保存自己的修改

配置環境

  1. jdk需要1.8版本
  2. 需要安裝gradle

新建 module

  1. 在 spring-framwork 工程下新建我們的測試 module,因爲 spring-framwork 是以 gradle 進行版本和 jar 包管理依賴,所以我們要新建 gradle module
    在這裏插入圖片描述
  2. 新建過程和 maven 過程沒啥區別,新建之後就會有你自己的測試工程目錄
    在這裏插入圖片描述
  3. 查看 spring-framwork 的 gradle 文件
    在這裏插入圖片描述
  4. 配置自己測試工程的 gradle 管理,這個名字改成在 spring-framwork 的 gradle 文件中的 include 的名字,然後自己測試工程的 gradle 文件中依賴自己的工程
    在這裏插入圖片描述
  5. 開始測試
    創建 Student 類:
public class Student {

	private Integer id;
	private String name;

	@Override
	public String toString() {
		return "Student{" +
				"id=" + id +
				", name='" + name + '\'' +
				'}';
	}

	public Integer getId() {
		return id;
	}

	public void setId(final Integer id) {
		this.id = id;
	}

	public String getName() {
		return name;
	}

	public void setName(final String name) {
		this.name = name;
	}
}

創建 Teacher 類:

public class Teacher {

	private Student student;

	@Override
	public String toString() {
		return "Teacher{" +
				"student=" + student +
				'}';
	}

	public Student getStudent() {
		return student;
	}

	public void setStudent(final Student student) {
		this.student = student;
	}
}

創建 TeacherConfig 類,使用註解的方式進行 bean 的加載:

@Configuration
public class TeacherConfig {

	@Bean
	public Teacher teacher() {
		Teacher teacher =  new Teacher();
		Student student = new Student();
		student.setId(2);
		student.setName("daming");
		teacher.setStudent(student);
		return teacher;
	}
}

創建 SimpleDemoTest 測試類,使用註解解析器進行上下文管理:

public class SimpleDemoTest {

	public static void main(String[] args) {

		final AnnotationConfigApplicationContext applicationContext = new AnnotationConfigApplicationContext(TeacherConfig.class);
		final Teacher teacher = (Teacher) applicationContext.getBean("teacher");
		System.out.println(teacher);
	}
}

開展源碼扣讀

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章