Spring、SpringMVC、MyBatis框架的作用

news/2025/2/15 19:47:53/

一、Spring框架

  1. Spring框架主要的Spring IOC(控制反转)和Spring AOP(面向切面)为思想内核。
  2. SpringIOC控制反转,即将创建对象和销毁对象的控制权交给了Spring容器。
    首先将需要的Bean对象保存在bean.properties配置文件中,例如UserDao=com.xxx.dao.UserDaoImpl,在创建Spring容器时,将这些配置的非懒加载单例Bean对象创建,并保存在HashMap中,key为属性(UserDao),value为根据该值创建出来的对象。在需要的时候从Spring容器中取即可。
  3. 依赖注入
    1)手动注入,例如将Dao注入到Service中,即在bean.xml文件中定义Dao和Service的bean,然后将Dao的bean的id通过property属性进行注入到Service中(property是在Service的bean标签内)。
    定义一个Service类,定义Dao对象,为其创建get,set方法。
    最后在容器中创建完Bean对象后,从容器中Service对象,然后再通过Service对象获取Dao对象即可完成依赖注入。
    2)自动注入autowire
    byName:在Spring容器中查找id与属性名相同的Bean,并进行注入。需要提供set方法。
    byType:在Spring容器中查找类型与属性类型相同的bean,并进行注入。需要提供set方法。即根据类对象的类型进行匹配。
    constructor:在Spring容器中查找id与属性名相同的bean,并进行注入。需要提供构造方法。

二、Spring体系结构

  1. Core Container:Spring核心模块,任何功能的使用都离不开该模块,是其他模块建立的基础。也就是Spring容器。
  2. Data Access/Integration:该模块提供了数据持久化的相应功能。即数据存取或数据整合模块。
  3. Web:该模块提供了Web开发的相应功能。
  4. AOP:提供了面向切面编程实现。
  5. Aspects:提供了与AspectJ框架的集成,该框架是一个面向切面编程框架。
  6. Instrumentation:提供了类工具的支持和类加载器的实现,可以在特定的应用服务器中使用。
  7. Messaging:为Spring框架集成了一些基础的报文传送应用。
  8. Test:提供与测试框架的集成。

三、SpringMVC框架

MVC全称Model View Controller,是一种设计创建Web应用程序的模式。

  1. Model(模型):指数据模型。用于存储数据以及处理用户请求的业务逻辑。在Web应用中,JavaBean对象,业务模型等都属于Model。即相当于dao、service、实体类等都是属于模型。
  2. View(视图):用于展示模型中的数据,一般为jsp或html文件。
  3. Controller(控制器):是应用程序中处理与用户交互的部分。接受视图提出的请求,将数据交给模型处理。并将处理后的结果交给视图显示。
  4. SpringMVC是一个基本MVC模式的轻量级Web框架,是Spring框架中的一个模块,和Spring可以直接整合使用。
  5. SpringMVC代替了Servlet技术,它通过一套注解,让一个简单的Java变成处理请求的控制器,而无须实现任何接口。

四、SpringMVC框架的执行流程

SpringMVC的组件

  1. DispatcherServlet:前端控制器,接受所有请求,调用其他组件。
  2. HandlerMapping:处理器映射器,根据配置找到方法的执行链。
  3. HandlerAdapter:处理器适配器,根据方法类型找到对应的处理器。
  4. ViewResolver:视图解析器,找到指定视图。

SpringMVC的工作流程

  1. 客户端将请求通过浏览器发给前端控制器。
  2. 前端控制器将请求发送给处理器映射器,处理器映射器根据路径找到方法的执行链,将方法的执行链返回给前端控制器。
  3. 前端控制器将方法执行链发送给处理器适配器,处理器适配器根据方法类型找到对应的处理器。
  4. 处理器执行方法,将结果返回给前端控制器。
  5. 前端控制器将结果发送给视图解析器,视图解析器找到视图文件位置。
  6. 视图渲染数据,并将结果显示到客户端。

五、MyBatis框架

  1. ORM(Object Relation Mapping)框架,对象关系映射,即在对象和数据库之间做映射处理。
  2. MyBatis是一个半自动ORM(Object Relation Mapping)框架,它的本质是对JDBC的封装,因为使用MyBatis框架不需要编写JDBC代码,但是需要编写SQL语句。
  3. 使用JDBC操作数据库,必须手动进行对象和数据库之间的数据转换。而使用ORM框架代替JDBC后,框架可以自动进行数据库和对象之间的转换,极大的增强了开发效率。

http://www.ppmy.cn/news/415902.html

相关文章

欧拉角微简介

欧拉角(Euler Angle)是可以表示3D空间中任何旋转的3个值,由莱昂哈德欧拉(Leonhard Euler)在18世纪提出。一共有3种欧拉角:俯仰角(Pitch)、偏航角(Yaw)和滚转角(Roll),下面的图片展示了它们的含义: 俯仰角是描述我们如何往上或往下…

关于ODA

首先要澄清一个概念:Autocad的二次开发分两类的, 一,Autocad软件的功能扩展,比如画一些非常复杂的图形,控件只能在Autocad软件环境中使用; 二,DWG文件的读写,嵌入到Autocad环境之外的…

Odoo是什么?Odoo较全面简介——江苏欧度软件

OdooERP起初并不叫Odoo,最初的名字为TinyERP,08年5月之后称之为改名OpenERP之后又改为Odoo,Odoo是一套全球开源的ERP/CRM系统.Odoo 是用于经营公司很好的开源管理软件 . Odoo是一系列开源商业应用套件,此套件可满足公司的一切应用需求,例如,企业基本的进销存、采购…

台达PLC

PLC ES系列DVP14ES00R2 DVP14ES00T2 DVP24ES00R2 DVP24ES00T2DVP30ES00R2 DVP30ES00T2 DVP32ES00R2 DVP32ES00T2DVP40ES00R2 DVP40ES00T2 DVP60ES00R2 DVP60ES00T2PLC EX系列主機 4AI/2AO10BIT/8BITDVP20EX00R2 DVP20EX11R2 DVP20EX00T2P…

欧拉角的计算

https://stackoverflow.com/questions/15022630/how-to-calculate-the-angle-from-roational-matrix http://www.staff.city.ac.uk/~sbbh653/publications/euler.pdf

通达OA国产化简介/信创版本

OA办公系统已经全面完成国产化适配,适配信创生态主流软硬件,目前的 CPU:支持飞腾、鲲鹏、兆芯、海光、龙芯CPU等, 操作系统:统信UOS、银河麒麟、中标麒麟操作系统, 数据库:支持达梦、南大通用…

ADO

ADO 微软公司的ADO (ActiveX Data Objects) 是一个用于存取数据源的COM组件。它提供了编程语言和统一数据访问方式OLE DB的一个中间层。允许开发人员编写访问数据的代码而不用关心数据库是如何实现的,而只用关心到数据库的连接。访问数据库的时候,关于SQ…

欧拉角 图解释

定义 先引wiki上的定义 欧拉角:由三个角度组成,在特定坐标系下用于描述刚体的orientation. 简单来说,就是绕一个三维坐标系统下的三个基轴旋转三个角度,可以用来表示物体通过各种绕七绕八的转,最终转到的那种形态&a…