eclipse 搭建Spring源码环境

来源:互联网 发布:js禁用鼠标点击事件 编辑:程序博客网 时间:2024/06/10 07:39

eclipse 搭建Spring源码环境

很久没有接触Spring了,想着看下Spring的源码,就有了这篇博文。虽然相当简单,但还是想记录下。

准备工作

1、spring jar包,下载地址:http://repo.spring.io/release/org/springframework/spring/

2、eclipse

1、使用eclipse搭建一个简单的关于Spring的Demo。

第一步:打开eclipse,新建一个dynamic web project 。名字任意,这里取名为:SpringDemo02.

点击“finish”即可。

第二步:右键项目名称—-》属性。

点击“add library”—->”user Library”

随便取一个名字来存放Spring相关的lib,这里取名为SpringLib2.

第三步:点击“Add External JARS”,添加我们在这里(http://repo.spring.io/release/org/springframework/spring/)下载下来并解压缩后的文件夹Spring/libs文件夹下的jar包。如果我们不清楚把什么jar包加进去,就全部加进去哈。

注意:这里还需要添加一个包:commons-logging-1.2.jar项目中是没有的,它是Apache的日志管理工具,spring为了所有的java应用程序进行统一的日志接口管理,所以需要下载commons-logging.jar这个包,下载地址是如下:

http://commons.apache.org/proper/commons-logging/index.html

进入后点击Download下载就行,然后和spring的包一起导入即可。

最后工程的目录如下:

第四步:包都导入完毕了,接下来实现一个很简单的功能

我们建立一个接口和两个实现类,实现的就是输出一句话,代码如下:

package module;public interface IHelloMessage {    public String sayHello();}package module;public class HelloJava implements IHelloMessage{    @Override    public String sayHello() {        System.out.println("hello java");        return "java";    }}package module;public class HelloPython implements IHelloMessage{    @Override    public String sayHello() {        System.out.println("hello python");        return "python";    }}

按照一般的使用,我们会分别实例化HelloJava和HelloPython来调用里面的方法使用,或者利用多态的概念通过接口来统一实例化对象使用里面的方法,其实有了spring就不用了,我们现在建立一个实体的类,用来放置接口实例化出的对象。

代码如下:

package module;public class Person {    private IHelloMessage helloMessage;    public Person(){}    public IHelloMessage getHelloMessage() {        return helloMessage;    }    public void setHelloMessage(IHelloMessage helloMessage) {        this.helloMessage = helloMessage;    }    public Person(IHelloMessage helloMessage) {        super();        this.helloMessage = helloMessage;    }    public String sayHello(){        return this.helloMessage.sayHello();    }}

一般的规范就是属性私有,并且设置get/set方法,分别有无参的和带参的构造方法,方便使用构造器进行对象的注入,然后我们在项目src目录下编写一个配置文件bean.xml,就是这个核心的配置文件,交代了spring应该怎么样对容器中的对象进行管理,所以说这个xml配置文档是spring的最重要的部分之一,内容如下:

<?xml version="1.0" encoding="UTF-8"?>  <!DOCTYPE beans PUBLIC "-//SPRING/DTD BEAN/EN"      "http://www.springframework.org/dtd/spring-beans.dtd">  <beans>  <bean id="helloJava" class="module.HelloJava"></bean>  <bean id="helloPython" class="module.HelloPython"></bean> <bean id="person" class="module.Person">     <!-- 配置依赖关系  控制反转  get/set方法注入 -->     <!-- <property name="helloMessage" ref="helloPython"></property> -->     <!-- 构造器注入 -->     <constructor-arg ref="helloPython" /> </bean></beans>

测试类,内容如下:

package test;import org.springframework.context.ApplicationContext;import org.springframework.context.support.ClassPathXmlApplicationContext;import module.Person;public class TestSpringDemo {    public static void main(String[]args){        ApplicationContext ctx = new ClassPathXmlApplicationContext("bean.xml");//读取bean.xml中的内容        Person person =ctx.getBean("person",Person.class);//创建bean的引用对象        String s = person.sayHello();        System.out.println(s);    }}

以上,就完成了所有的工作,然后点击运行即可。

最后,由于我们想看Spring源码,具体步骤如下:

1、右键项目名—>属性

2、点击“edit”,在External location中制定相对应的XXX-sources.jar即可。例如:spring-beans-4.3.5.RELEASE-sources.jar

就这样,我们就实现了在eclipse中跟踪Spring的源码了。

参考资料

http://www.cnblogs.com/xing901022/p/4178963.html

http://www.cnblogs.com/freeweb/p/5100131.html

0 0
原创粉丝点击