关于对Spring框架的详解

article/2025/9/12 23:47:52

Spring框架

  • 基本概念
  • Spring的形成
  • 主要模块
  • 三层架构
  • Spring的优点
  • 对于Spring 框架中都用到设计模式:

在这里插入图片描述

基本概念

  Spring框架是由于软件开发的复杂性而创建的。Spring使用的是基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅仅限于服务器端的开发。从简单性、可测试性和松耦合性角度而言,绝大部分Java应用都可以从Spring中受益。Spring的一个最大的目的就是使JAVA EE开发更加容易。同时,Spring之所以与Struts、Hibernate等单层框架不同,是因为Spring致力于提供一个以统一的、高效的方式构造整个应用,并且可以将单层框架以最佳的组合揉和在一起建立一个连贯的体系。可以说Spring是一个提供了更完善开发环境的一个框架,可以为POJO(Plain Ordinary Java Object)对象提供企业级的服务。

Spring的形成

  Spring的形成,最初来自Rod Jahnson所著的一本很有影响力的书籍《Expert One-on-One J2EE Design and Development》,就是在这本书中第一次出现了Spring的一些核心思想,该书出版于2002年。另外一本书《Expert One-on-One J2EE Development without EJB》,更进一步阐述了在不使用EJB开发JAVA EE企业级应用的一些设计思想和具体的做法。有时间了可以详细的研读一下。当然Spring框架为Java应用程序提供基础性服务的一套框架,目的是用于简化企业应用程序的开发,它使得开发者只需要关心业务需求。

主要模块

主要包括以下七个模块:
  (1)Spring Context:提供框架式的Bean访问方式,以及企业级功能(JNDI、定时任务等);
  (2)Spring Core:核心类库,所有功能都依赖于该类库,提供IOC和DI服务;
  (3)Spring AOP:AOP服务(包含了使用AOP特性时所使用到的类);
  (4)Spring Web:提供了基本的面向Web的综合特性,提供对常见框架如Struts2的支持,Spring能够管理这些框架,将Spring的资源注入给框架,也能在这些框架的前后插入拦截器;
  (5)Spring MVC:提供面向Web应用的Model-View-Controller,即MVC实现。
  (6)Spring DAO:对JDBC的抽象封装,简化了数据访问异常的处理,并能统一管理JDBC事务;
  (7)Spring ORM:对现有的ORM框架的支持;
在这里对于Spring MVC模块进行详细介绍:
  MVC 模式(Model–view–controller)是软件工程中的一种软件架构模式,它把软件系统分为三个基本部分:模型(Model)、视图(View)和控制器(Controller),简而言之在本次项目当中的思想在于:把整个项目分成多个部分的耦合; 并且主要分为: M模型块,即抽象父类;V视图块,打印出用户交互信息;C控制块:用于实现对数据的各种操作。

三层架构

同时也可以这样理解标准三层架构:

  (1)数据访问层:主要是对原始数据(数据库或者文本文件等存放数据的形式)的操作层,而不是指原始数据,也就是说,是对数据的操作,而不是数据库,具体为业务逻辑层或表示层提供数据服务.

  (2)业务逻辑层:主要是针对具体的问题的操作,也可以理解成对数据层的操作,对数据业务逻辑处理,如果说数据层是积木,那逻辑层是对这些积木的搭建。具体的讲主要负责对数据层的操作。也就是说把一些数据层的操作进行组合。

  (3)表示层:主要表示WEB方式,如果逻辑层是相当强大和完善,无论表现层如何定义和更改,逻辑层都能完善地提供服务。主要对用户的请求接受,以及数据的返回,为客户端提供应用程序的访问。

Spring的优点

关于Spring同时也具有以下几个优点:
  (1)方便解耦,简化开发:Spring就是一个大工厂,可以将所有对象创建和依赖的关系维护,交给Spring管理。
  (2)AOP编程的支持:Spring提供面向切面编程,可以方便的实现对程序进行权限拦截、运行监控等功能。
  (3)声明式事务的支持:只需要通过配置就可以完成对事务的管理,而无需手动编程。
  (4)方便程序的测试:Spring对Junit4支持,可以通过注解方便的测试Spring程序。
  (5)方便集成各种优秀框架:Spring不排斥各种优秀的开源框架,其内部提供了对各种优秀框架的直接支持(如:Struts、Hibernate、MyBatis等)。
(6)降低Java EE API的使用难度:Spring对Java EE开发中非常难用的一些API(JDBC、JavaMail、远程调用等),都提供了封装,使这些API应用难度大大降低。

对于Spring 框架中都用到设计模式:

  (1)工厂模式:Spring使用工厂模式,通过BeanFactory和ApplicationContext来创建对象,是一种为访问类提供一个创建一组相关或相互依赖对象的接口,并且访问类无须指定所要产品的具体类就能得到同族的不同等级的产品的模式结构。
  (2)单例模式:指一个类只有一个实例,且该类能自行创建这个实例的一种模式,Bean默认为单例模式。
  (3)策略模式:例如Resource的实现类,针对不同的资源文件,实现了不同方式的资源获取策略。
  (4)代理模式:分为静态代理模式(程序运行前就已经存在代理类的字节码文件)和动态代理模式(代理类在程序运行时创建的代理方式),Spring的AOP功能用到了JDK的动态代理和CGLIB字节码生成技术
  (5)模板方法:可以将相同部分的代码放在父类中,而将不同的代码放入不同的子类中,用来解决代码重复的问题。比如RestTemplate, JmsTemplate, JpaTemplate
  (6)适配器模式:Spring AOP的增强或通知(Advice)使用到了适配器模式,Spring MVC中也是用到了适配器模式适配Controller
  (7)观察者模式:Spring事件驱动模型就是观察者模式的一个经典应用。
  (8)桥接模式:可以根据客户的需求能够动态切换不同的数据源。比如我们的项目需要连接多个数据库,客户在每次访问中根据需要会去访问不同的数据库
在这里插入图片描述


http://chatgpt.dhexx.cn/article/da7deFpQ.shtml

相关文章

【Spring框架】Spring框架介绍

文章目录 Spring框架介绍Spring两大核心技术 Spring的优点Spring体系介绍核心容器数据访问/集成Web页面其他模块 Spring框架介绍 Spring框架是分层的 Java SE/EE 应用 full-stack 全栈式轻量级开源框架,以 IOC(Inverse Of Control:控制反转)和 AOP(Aspe…

【Java】Spring框架

一、Spring简介 简介 Spring是分层的Java SE/EE应用full-stack轻量级开源框架,以IoC(Inverse Of Control:反转控制)和AOP(Aspect Oriented Programming:面向切面编程)为内核。提供了展现层Spr…

spring框架解析(全)

spring概述 spring容器启动 springIoc控制反转 spring依赖注入 spring事务 spring事件监听 springaop面向切面编程 –AOP用例搭建 –注解配置 Spring AOP详解 –Transactional注解 spring注解大全 spring概述 spring是一个轻量级的容器,用于管理业务相关对象的。其两…

Spring框架学习

Spring框架 1、Spring框架介绍及搭建 Spring简介(官网:Spring | Home) Spring框架是一个开放源代码的J2EE应用程序框架,由Rod Johnson发起,是针对bean的生命周期进行管理的轻量级容器(lightweight container)。 Spr…

什么是spring框架?spring特点与好处,使用spring框架的好处是什么.

Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其著作Expert One-On-One J2EE Development and Design中阐述的部分理念和原型衍生而来。它是为了解决企业应用开发的复杂性而创建的。框架的主要优势之一就是其…

什么是spring框架?spring框架到底有什么用?spring框架到底做了些什么?

什么是spring框架,spring框架究竟有什么用呢?我们可以用spring框架来做些什么呢?这是我今天要说的内容。 当然,百度spring框架会出现一大堆spring框架的介绍,以及IOC和AOP。但是这些官方的语言,看书都有解…

【Spring框架一】——Spring框架简介

系列文章目录 Spring框架简介 系列文章目录前言一、什么是Spring框架?二、Spring框架的优势1.简化开发流程:Spring提供了许多现成的功能,可以使得开发人员在构建应用程序时减少编写重复代码的工作。2.提高可维护性:Spring框架采用…

Spring 框架

Spring 1、概述: Spring是最受欢迎的轻量级的企业级Java应用程序开发框架;Spring框架的 核心特性可以用于开发任何Java应用程序,但是在JavaEE平台上构建Web应 用程序是需要扩展的。Spring框架的目标是使J2EE开发变得更容易使用,通…

Spring框架梳理总结(适合多刷)

目录 前言大纲总结1. 概念详解1.1 IOC与AOP1.2 IOC与DI1.3 接口区别 2. 注入方式2.1 基本类型2.2 复杂类型 3. 配置属性4. 注解注入5. AOP 前言 在看完上一篇文章每个知识点的时候 Spring框架从入门到学精(全) 大部分人对spring还是有些懵懂 可能是知识…

学习Spring框架这一篇就够了

1. spring概述 1.1 Spring是什么(理解) Spring是分层的 Java SE/EE应用 full-stack(全栈的) 轻量级开源框架,以 IOC(Inverse Of Control:控制反转)和 AOP(Aspect Orient…

【QT学习】实现MVC框架的简易封装(一文读懂)

文章目录 前言一、MVC框架简介1.核心部件2.使用目的3.MVC优点 二、具体封装步骤1.文件管理2.创建模型3.创建控制器4.MVC实现(用户登录验证为例) 总结 前言 MVC(Model-View-Controller)框架作为一种软件设计模式,已经被…

MVC框架以及实例

MVC框架 MVC(model,view,controller),一种将业务逻辑、数据、界面分离的方法组织代码的框架。在改进界面及用户交互的同时,不需要重写业务逻辑。MVC将传统的输入、处理和输出分离。 Model:模型,逻辑部分,也是表示应用程序的核心,比…

MVC框架流程图

MVC框架流程图 MVC的概念其实就那么简单,这些概念其实早已深入我们的内心,而我们所缺乏的是将其本质挖掘出来。我们来看看下面这幅图,这是一副流行了很多年的讲述MVC模型的图: 在这幅图中,MVC三个框框各司其职&#x…

了解MVC模式与MVC框架

MVC MVC的概念模型(Model)控制器(Controller)视图(View) MVC工作流程Java MVC框架Struts1框架Struts2框架Spring MVC框架JSF框架Tapestry框架 MVC的概念 MVC全名是Model View Controller,M是指数据模型,V是指用户界面,C是控制器。使用MVC最直…

Qt5 MVC框架

1、MVC 设计模式 起源于smalltalk的一种与用户界面设计相关的设计模式。 作用:实现数据与用户界面分离; 组成:模型model(表示数据)、视图view(表示用户界面)及控制controller(定义了用户在界面上的操作&am…

MVC框架概述

2014.11.8我们完成为时两月的中级软考准备,没有多余的时间去放松、娱乐,紧接着迎来了我进入提高班以来真正的一次项目实践--高效平台。 我做的是基础系统,就是一个算是幕后英雄的角色吧!考试系统、评教系统需要我们的数据、同时新生入学系统由我们来维护,所以说任务艰巨而…

C# .Net MVC框架实现最简单的登陆

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言C#.net实现最简单登陆 一、C#,.net是什么,相比较于C,java二、C# .net创建一个MVC框架工程1.步骤 实现结果 前言 C#.net实现最简单登陆 提示&#…

ASP.NET - MVC框架及搭建教程

一、MVC简介 MVC:Model-View-Controller(模型-视图-控制器),MVC是一种软件开发架构模式。 1、模型(Model) 模型对象是实现应用程序数据域逻辑的应用程序部件。 通常,模型对象会检索模型状态并…

PHP实现简易的MVC框架

目录 一、前言二、哪些框架使用到了mvc架构?三、框架结构简介四、框架实现第一步(解析路由)4.1 写入口文件4.2 定义Core核心类 五、框架实现第二步(MVC的实现)5.1 控制器的实现5.2 视图的实现5.3 模型的实现 六、总结 …

Unity MVC框架之见解

Unity MVC框架之见解 MVC框架认识构架图案例无框架,普通逻辑代码脚本主UI脚本角色UI脚本摄像机显示脚本脚本的放置 MVC框架的运用Model脚本View脚本主界面的View脚本角色View脚本 Controller脚本主界面的Controller脚本角色Controller脚本 控制主界面的显示脚本脚本…