Spring概述学习笔记
1、Spring概述
Spring致力于J2EE应用的各种解决方案,而不仅仅专注于某一层的方案。
可以说,Spring是企业应用开发的一站式选择,他贯穿于表现层、业务层、持久层。
Spring并不想取代那些已有的框架,而是以高度的开放性与这些框架无缝整合。
Spring的两个目标:
1、让现有技术更易于使用
2、促进良好的编程习惯
2、Spring体系结构

体系结构分为7个部分
1、Spring Core
Spring Core 是Spring的核心,提供IOC和依赖注入特性
2、Spring Context
提供一种框架风格的方式来访问对象,有些像JNDI注册表。
他继承了Beans包的功能,同时增加了国际化、事件传播、资源装载,以及透明创建上下文
3、Spring AOP
通过配置管理,Spring AOP直接将面向方面编程功能集成到了Spring框架中
4、Spring DAO
提供JDBC的抽象层,可以消除冗长的JDBC编码和解析数据库厂商特有的错误代码
5、Spring ORM
Spring框架插入了若干个ORM框架,从而提供了ORM对象关系工具,其中包括JDO、Hibernate和iBatis等,所有这些都遵从Spring的通用事务和DAO异常层次结构
6、Spring Web
建立在应用程序上下文模块之上,为基于Web的应用程序提供了上下文。所以,他支持与Jakaarta Struts的集成
7、Spring MVC
3、Spring架构

这三个核心组件构建起了整个Spring的骨骼架构。
如果没有这几个核心组件,就不可能有AOP、Web等上层的特性功能。
1、Bean组件
Bean组件是这三个核心组件的核心,他是Spring核心的主角。
Bean组件是Spring容器使用DI(依赖注入)管理所有组成应用系统的组件。

那为什么Bean组件在Spring中如此重要呢?
这是Spring框架的设计目标决定的,Spring为什么这么流行,我们使用Spring的原因是什么?
我们仔细想想就会发现,原来Spring解决了一个非常非常关键的问题,那就是让我们把对象之间的依赖关系用配置文件来管理,也就是我们在对象之间的依赖的时候我们不通过对象去创建对象了,他们之间的依赖关系改为用配置文件来管理了,这也就是他的依赖注入机制,而这个注入关系在一个叫IOC容器中管理。
在这个容器中,Spring通过将对象包装在Bean中而达到对这些对象的管理
2、Context组件
Context组件的作用是 发现每个Bean之间的关系,为他们之间建好这种关系并进行维护。所以可以把Context看做是一个Bean的关系集合。这个关系集合我们称之为IOC容器。
3、Core组件
Core组件是发现、建立和维护每个Bean之间关系需要的一系列工具,因此我们可以把Core组件想像成我们的until工具包。

Bean组件比作是一场演出的演员、
Context就是这场演出的舞台背景、
Core是演出的道具。
Spring概述学习笔记的更多相关文章
- 【转】Spring.NET学习笔记——目录
目录 前言 Spring.NET学习笔记——前言 第一阶段:控制反转与依赖注入IoC&DI Spring.NET学习笔记1——控制反转(基础篇) Level 200 Spring.NET学习笔 ...
- Spring MVC 学习笔记一 HelloWorld
Spring MVC 学习笔记一 HelloWorld Spring MVC 的使用可以按照以下步骤进行(使用Eclipse): 加入JAR包 在web.xml中配置DispatcherServlet ...
- SpringBoot + Spring Security 学习笔记(五)实现短信验证码+登录功能
在 Spring Security 中基于表单的认证模式,默认就是密码帐号登录认证,那么对于短信验证码+登录的方式,Spring Security 没有现成的接口可以使用,所以需要自己的封装一个类似的 ...
- SpringBoot + Spring Security 学习笔记(三)实现图片验证码认证
整体实现逻辑 前端在登录页面时,自动从后台获取最新的验证码图片 服务器接收获取生成验证码请求,生成验证码和对应的图片,图片响应回前端,验证码保存一份到服务器的 session 中 前端用户登录时携带当 ...
- spring揭密学习笔记
spring揭密学习笔记 spring揭密学习笔记(1) --spring的由来 spring揭密学习笔记(2)-spring ioc容器:IOC的基本概念
- Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建
Spring MVC 学习笔记12 -- SpringMVC+Hibernate开发(1)依赖包搭建 用Hibernate帮助建立SpringMVC与数据库之间的联系,通过配置DAO层,Service ...
- Spring MVC 学习笔记11 —— 后端返回json格式数据
Spring MVC 学习笔记11 -- 后端返回json格式数据 我们常常听说json数据,首先,什么是json数据,总结起来,有以下几点: 1. JSON的全称是"JavaScript ...
- Spring MVC 学习笔记10 —— 实现简单的用户管理(4.3)用户登录显示全局异常信息
</pre>Spring MVC 学习笔记10 -- 实现简单的用户管理(4.3)用户登录--显示全局异常信息<p></p><p></p>& ...
- Spring MVC 学习笔记9 —— 实现简单的用户管理(4)用户登录显示局部异常信息
Spring MVC 学习笔记9 -- 实现简单的用户管理(4.2)用户登录--显示局部异常信息 第二部分:显示局部异常信息,而不是500错误页 1. 写一个方法,把UserException传进来. ...
随机推荐
- 欧拉法求解常微分方程(c++)
#include<iostream> #include<iomanip> using namespace std; int main() { double x, y, h; ...
- 学习HSDB
HSDB则是在SA(Serviceability Agent)基础上包装起来的一个调试器,而SA是个非常便于探索HotSpot VM内部实现的API. Stack Memory窗口的内容有三栏: 左起 ...
- go - helloword
package mainimport "fmt" //一定要双引号func main() {/* test hello word *///test fmt.Println(&quo ...
- [技术博客] 如何避免在代码中多重render
目录 问题发现 方案1 extracted_method and return(父函数and return法) 方案2 子函数yield,父函数调用后{return} 方案3 extracted_me ...
- 冰多多团队-第一次Scrum例会
冰多多团队-第一次Scrum会议 注:由于对课程要求的不熟悉,所以本文档为周会后的补充总结文档 会议基本情况 会议时间:3.28 19:00 - 19:30 会议地点:新主楼F座2楼沙发休息处 工作情 ...
- Pandas 与 Numpy 常用方法总结
Lambda 函数实现 简单的说,lambda 就是一个函数,但是这个函数没有名字,所以我们介绍一下这个函数的调用形式,参数与返回值的实现. lambda 的格式如下: lambda [arg1 [, ...
- 【phpstudy2016】apache配置Tp5.0,获取表单数据总是多了一个路由变量,解决
1.用的apahce配置tp5.0的php环境 2.发现input()过来的数据,总是多了一个变量,那就是路由变量, 类似[array(2) { ["/index/index/form_su ...
- Windows通过URL启动本机App
Windows通过URL启动本机App http://xxx.itdhz.com/?file=001-Windows/100-Windows通过URL启动本机App
- 【Vegas原创】MAC电脑升级系统无法开机的终极解决办法
MAC OS升级Mojave .Catalina ,老一代的MacBook会产生一种情况:无法开机.按电源键没反应,会有间断性的滋滋的声音,屏幕都不亮. 终极解决方法,就一个字:等. 我升级Mojav ...
- 前端解析 excel docx
在研究中... https://www.npmjs.com/package/xlsx https://www.jianshu.com/p/68a420a68ded https://www.jiansh ...