spring 源码阅读入门

扫码关注公众号:Java 技术驿站

发送:vip
将链接复制到本浏览器,永久解锁本站全部文章

【公众号:Java 技术驿站】 【加作者微信交流技术,拉技术群】

spring和源码3.0.5下载

http://download.csdn.net/download/haluoyimo/7752753

http://pan.baidu.com/s/1qYnK784

参考文章

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

首先新建一个Java项目;

20191102100822\_1.png

解压后的spring包是如下的结构;

20191102100822\_2.png

dist内是发布的包;

20191102100822\_3.png

src内是对应的源码包;

20191102100822\_4.png

项目属性导入全部的dist下的包,还有mysql-connector,commons-logging等;完成后如下图;

或者光导入项目用到的包也可;

20191102100822\_5.png

点开一个导入的spring dist包,点击Source attachment,点击 Edit 按钮;

20191102100822\_6.png

添加源码包的路径,即src下的包的路径;如下图;

发布包和源码包一个个对应的;

20191102100822\_7.png

添加好之后如下;

20191102100822\_8.png

20191102100822\_9.png

完成上述后项目结构如下;

20191102100822\_10.png

新建如下的包,类,文件;

20191102100822\_11.png

代码;

Person.java

    package com.test.bean;

    public class Person {

        private String name;
        private int age;

        public String getName() {
            return name;
         }
         public void setName(String name) {
             this.name = name;
         }
         public int getAge() {
             return age;
         }
         public void setAge(int age) {
             this.age = age;
         }
         public void info(){
             System.out.println("name:"+getName()+" age:"+getAge());
         }
     }

test.java

    package testSpring;

    import org.springframework.context.ApplicationContext;
    import org.springframework.context.support.ClassPathXmlApplicationContext;

    import com.test.bean.Person;

    public class test {
        public static void main(String[] args){
            ApplicationContext ctx = new ClassPathXmlApplicationContext("bean.xml");//读取bean.xml中的内容
            Person p = ctx.getBean("person",Person.class);//创建bean的引用对象
            p.info();
        }
    }

bean.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns="http://www.springframework.org/schema/beans"
        xsi:schemaLocation="http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
        <bean id="person" class="com.test.bean.Person">
            <property name="name" value="xingoo"/>
            <property name="age" value="12"/>
        </bean>
    </beans>

项目运行结果如下;

20191102100822\_12.png

ApplicationContext ctx = new ClassPathXmlApplicationContext(“bean.xml”);//读取bean.xml中的内容
Person p = ctx.getBean(“person”,Person.class);//创建bean的引用对象

这两句下断点;然后开始debug;

停留在断点;

20191102100822\_13.png

打F5,进入下一个函数;进到spring源码了;因为前面附着了spring源码包,对应的spring源码函数显示出来;

20191102100822\_14.png

F5,下一个函数;

20191102100822\_15.png

F5,下一个函数;

20191102100822\_16.png

F5,下一个函数;

20191102100822\_17.png

F5,下一个函数;

20191102100822\_18.png

F5,下一个函数;

看到一列的函数调用,这个就是传说中的栈帧了;

20191102100822\_19.png

如果进到没有附着源码的函数,则会提示Source not found,如上图;


来源:http://ddrv.cn

赞(0) 打赏
版权归原创作者所有,任何形式的转载请联系博主:daming_90:Java 技术驿站 » spring 源码阅读入门

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏