在上一篇文章中,我费了九牛二虎之力,终于把源码编译好并且导入了eclipse,接下来就准备大刀阔斧的进行源码分析啦,首先得建立一个测试项目。
1、导入源码
这一步其实上面一篇文章已经完成啦,不过这里还是要说明下,导入的时候选的是Existing Projects into Workspace,然后注意
选择的是spring的根文件夹,当然你也可以选择具体项目,但是这样子可能要考虑后面项目之间的依赖问题,当如后如下:

记得注意JDK版本问题和groovy插件问题,具体可以参考我的上一篇文章:https://www.suibibk.com/topic/758756909506363392
2、新建测试项目
我这里建立的测试项目是一个maven项目,当然你也可以建立一个最最最简单的Java Project,结构如下

奇怪为什么会报错呢?难道这理还不能直接用Spring的类,是的,我们需要引入依赖,那引入哪个最好呢,这里建议spring-context,原因如下图

spring-context该有的都有了,所以我们引入这个就可以了,引入后果然不报错了。
3、测试
我们这里因为是研究Spring的源码,所以先从xml配置文件的方式开始,目录结构如上,具体代码如下:
App.java
public class App {@SuppressWarnings("resource")public static void main(String[] args) {//获取上下文对象ApplicationContextApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");//获取实例,配置文件User user = (User)context.getBean("user");user.setUsername("suibibk.com");user.setAge(18);System.out.println(user);}}
User.java
public class User {private String username;private int age;public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}@Overridepublic String toString() {return "User [username=" + username + ", age=" + age + "]";}}
applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:context="http://www.springframework.org/schema/context"xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsdhttp://www.springframework.org/schema/contexthttp://www.springframework.org/schema/context/spring-context.xsd"><!--编写对应的配置信息--><bean class="com.suibibk.spring.User" id="user"></bean><!-- 开启注解<context:component-scan base-package="com.suibibk.spring"/>--></beans>
这里也先不开启注解先。
执行代码,输出如下结果:
User [username=suibibk.com, age=18]
完成!
