spring源码与架构分析——Spring框架的一些理解

23 篇文章 1 订阅
11 篇文章 0 订阅

在下才疏学浅,对spring架构的理解还处于初级阶段,写spring源码与架构分析只是午夜失眠记录一下自己对spring的个人理解而已,如有错误还请诸位博友见谅并指点一二。

从大一就开始学习Spring了,到现在也已经有两个多的年头了,也有很多个项目中使用到了Spring生态系统中的很多项目了。

Spring framework的core模块就不用说了,其他的比如spring data jpa,spring mvc,spring data jdbctemplate等等,感觉spring还是很强大的,主要是面对java领域,简化了很多开发,开发人员可以把对象的管理交给spring 容器。而且spring是一个轻量级的框架,所谓轻量级其实是相对于EJB这种重量级框架而言的。Spring和EJB相对,Spring的对象可以全是POJO的,也就是简单Java对象,对象只需要提供set、get方法即可,不用像EJB那样要实现一个功能必需实现多个Java类并配置一系列的配置文件,而且每个Java类必须遵守EJB规范,比如事务类要继承事务父类,还要实现远程调用接口之类的,而且还需要运行在JBoss容器中,这无形给开发带来了很多束缚。Spring则不同,Spring支持POJO,所有的Java对象都可以通过简单的配置从容器中获取,并且Spring生态系统中几乎所有的模块都不会相互影响,这其实是在框架模块的层次实现了低耦合,Spring生态系统的每个模块我们都可以当成一个独立的模块来使用。

这学期开了一门“软件体系结构”的课,主要是讲软件体系结构和设计模式的,老师是著名的CSDN博客专家刘伟,诸位博友如有兴趣可以访问刘伟老师的博客目录,刘伟老师在软件体系结构和设计模式这一块很有见解,写了很多很好的博客,也出版过几本相应的书箱,各位博友可以好好关注一下。

以软件体系结构和设计模式的角度来审视Spring的话,不难发现其实Spring实现了很多设计模式,比如最明显的Spring容器的基础BeanFactory接口,使用了创建者模式中的工厂模式和单例模式。再者,Spring的核心Ioc是面向对象设计原则中的依赖倒转的最好体现,还有AOP的实现使用了代理模式。有时候我们可能会对Spring的一些概念烂熟于心,但如果从设计模式的角度来看的话,还是有很多深层次的东西的。在接下来的一系列博文中,我将结合软件体系结构和设计模式的相关知识来从spring源码中分析spring的框架设计,并理解分析相关模块的低层技术实现。如诸位博友也有相同兴趣,可发私信或邮箱于我共同探讨。我的邮箱是1455813736@qq.com

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值