V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
qingfengxm
V2EX  ›  Java

spring 源码 如何看它的门道,求大神指点

  •  1
     
  •   qingfengxm · 2018-06-13 15:08:00 +08:00 · 3454 次点击
    这是一个创建于 2384 天前的主题,其中的信息可能已经有所发展或是发生改变。

    spring 源码看了也有段时间了,一个类接一个类的看,看不出门道来,请问大神们都是怎么研究 spring 源码的啊?直接跑源码里的测试用例???实在搞不懂啊,求大神指点

    5 条回复    2018-06-20 23:10:25 +08:00
    donnior
        1
    donnior  
       2018-06-13 15:53:21 +08:00   ❤️ 3
    不是大神,但是多年前也算是看过 spring 源码,个人建议

    1. 现在版本的 spring 太庞大,各种第三方接入太多,可以从老版本 spring 开始看
    2. 核心看 IOC 和 AOP,毕竟是两大基石;看得差不多了可以继续看事务管理的源码,个人认为较经典的阐述了 AOP
    3. 一点小技巧,spring 的源码基本上都是遵循一个模式,顶层是各种 interface ( spring 的接口分得很细很讲究,值得好好学习),然后是 abstract class,最后是各种 concrete class; 视你的目的和能力看,最好对着一些设计原则学习
    4. 如果你是想看流程之类的,可以以简单的 spring mvc 项目为蓝本,打开 log 级别到 debug,可以顺着往下看,一步一步看
    5. 如果你还想看 spring boot,在上述基础上看明白 auto config 以及如何实现个人觉得就够了
    xiaoshenke
        2
    xiaoshenke  
       2018-06-13 17:48:48 +08:00
    为什么要看源码?知道 ioc,aop 就够了,spring 的源码代码质量又不高(不过呢,java 的东西本来就是又臭又长),本质就一个 ioc,aop,没东西了。
    xiaoshenke
        3
    xiaoshenke  
       2018-06-13 17:49:23 +08:00
    年轻人,会看源码远远比不了会写代码,多写少看。
    Liuuu
        4
    Liuuu  
       2018-06-13 19:48:05 +08:00
    @xiaoshenke #2 膜拜大神
    981764793
        5
    981764793  
       2018-06-20 23:10:25 +08:00 via Android
    这两天也想学习源码部分来着,但是发现 spring 太庞大了,看着脑袋大,决定先学习 IOC AOP 部分,这是这两天的成果,https://gitee.com/981764793/LSFramework
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   840 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 21:09 · PVG 05:09 · LAX 13:09 · JFK 16:09
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.