Spring框架的组成结构

本文深入讲解Spring框架的核心组件,包括Spring Framework Runtime、Data Access/Integration、JDBC、ORM、OXM、JMS、Transactions、MVC、AOP、Instrumentation、Core Container等,覆盖了从数据访问到事务处理,从Web开发到面向切面编程的全面内容。

Spring Framework Runtime(Spring框架运行时)


Data Access/Integration(数据访问和集成)

JDBC - Java Database Connectivity(Java数据库连接)

Java数据库连接——JDBC基础知识(操作数据库:增删改查)

ORM - 0bject/Relational Mapping对象 - 关系映射

ORM 实例教程

OXM - O/X Mapper

spring oxm入门(包含demo)

JMS - Java Message Service(Java消息服务)

JMS(Java消息服务)入门教程

Transactions(处理)

Spring Transaction使用详解


Web: MVC - Model View Controller/Remoting(远程处理)

Web(网) 

Servlet(小服务程序) 

Servlet 菜鸟教程

Portlet(一种门户导入的信息组件)

Java Portlets 介绍

Struts(源代码)

Struts Web 框架简介


AOP - Aspect Oriented Programming(面向切面编程) 

Spring AOP就是这么简单啦 掘金


Aspects(方面)

Aspects框架详解 简书


Instrumentation(仪表化)

Instrumentation的理解 简书


Core Container(核心容器)

Bean、Core、Context、SpEL
1、Bean和Core模块提供了整个框架最基础的部分,包括了IOC和DI。-->这里的核心概念是BeanFactory
  Core模块:包含框架基本的核心工具类。是其他组件的基本核心。
  Bean模块:包含访问配置文件、创建和管理bean以及进行Inversion of Control/DI操作相关的类。
2、Context建立在Core和Bean提供的基础上。提供框架式(全局)访问对象的方式。
  Context模块:构建于Core和Bean模块基础之上,提供了一种类似JNDI注册器的框架式对象访问方法。
  ApplicationContext接口是Context模块的关键。
3、Core、Bean、Context构成了Spring的骨架。
4、SpEL:提供了一种强大的英语运行时操作对象的表达式语言。

Beans(豆子)

JavaBeans的介绍与使用

Bean组件
1、解决的问题:Bean的定义、Bean的创建、对Bean的解析,对于使用者而言,我们只需要关注Bean的创建,其他两个由Spring内部完成。
2、Bean的创建用到了工厂模式:父类是BeanFactory,最终的实现类是DefaultListableBeanFactory。
3、Bean的定义要有BeanDefinition描述:当配置文件中的一个标签被解析后就会在内部转化成一个BeanDefinition对象。以后的操作都是对这个对象完成的 。
4、bean的解析:主要就是对Spring配置文件的解析,顶级接口是BeanDefintionReader和BeanDefinitionDocumentReader。

Core(核心)

Core组件

1、定义了资源的访问方式(这种把所有资源都抽象成一个接口的方式很值得在以后设计中拿来学习)
2、我们看到Resource接口封装了各种可能的资源类型,对使用者来说屏蔽了文件类型的不同。Resource接口继承了InputStreamSource接口,这个接口有个GetInputStream方法,返回的是一个InputStream类。所有的资源都可以通过这一个接口来获取,也屏蔽了资源的提供者。我们再看一下最下边的实现类:ResourceLoader接口,所有的资源都通过他来加载,这样就屏蔽了不同资源加载者的差异。

Context(环境)

Context组件

1、他给Spring提供了一个运行时的环境,用以保存各个对象的状态
2、他继承了BeanFactory的接口,说明Spring容器的主题对象还是Bean
3、他还继承了ResourceLoader接口,是ApplicationContext可以访问到外部任何资源
4、ApplicationContext必须要完成的事情:
  标识一个应用环境
  利用BeanFactory创建Bean对象
  保存对象关系表
  能够捕获各种事件

SpEL - Spring Expression Language(Spring表达式语言)

Spring 表达式语言 (SpEL)


Test

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Thomas Kant

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值