SSM框架介绍以及功能原理

限时加码!20+主流AI编程工具免费用 购周边加赠Coding Plan Lite,Claude Code、Cursor等即刻畅享,学习进阶更高效! 阅读详情

SSM是sping+springMVC+mybatis集成的框架。
Spring框架概述
什么是Spring
Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其著作Expert One-On-One J2EE Development and Design中阐述的部分理念和原型衍生而来。它是为了解决企业应用开发的复杂性而创建的。框架的主要优势之一就是其分层架构,分层架构允许使用者选择使用哪一个组件,同时为 J2EE 应用程序开发提供集成的框架。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。Spring的核心是控制反转(IoC)和面向切面(AOP)。简单来说,Spring是一个分层的JavaSE/EE full-stack(一站式) 轻量级开源框架。
IOC:控制反转也叫依赖注入,IOC利用java反射机制,AOP利用代理模式。所谓控制反转是指,本来被调用者的实例是有调用者来创建的,这样的缺点是耦合性太强,IOC则是统一交给spring来管理创建,将对象交给容器管理,你只需要在spring配置文件总配置相应的bean,以及设置相关的属性,让spring容器来生成类的实例对象以及管理对象。在spring容器启动的时候,spring会把你在配置文件中配置的bean都初始化好,然后在你需要调用的时候,就把它已经初始化好的那些bean分配给你需要调用这些bean的类。
AOP:面向切面编程。(Aspect-Oriented Programming)
AOP可以说是对OOP的补充和完善。OOP引入封装、继承和多态性等概念来建立一种对象层次结构,用以模拟公共行为的一个集合。实现AOP的技术,主要分为两大类:一是采用动态代理技术,利用截取消息的方式,对该消息进行装饰,以取代原有对象行为的执行;二是采用静态织入的方式,引入特定的语法创建“方面”,从而使得编译器可以在编译期间织入有关“方面”的代码,属于静态代理
SpringMVC执行流程框图:
在这里插入图片描述

SpringMVC流程:
01、用户发送出请求到前端控制器DispatcherServlet。
02、DispatcherServlet收到请求调用HandlerMapping(处理器映射器)。
03、HandlerMapping找到具体的控制器(可查找xml配置或注解配置),生成处理器对象的执行链(如果有),再一起返回给DispatcherServlet。
04、DispatcherServlet调用HandlerAdapter(处理器适配器)。
05、HandlerAdapter经过适配调用具体的处理器(controller)。
06、Controller执行完成返回ModelAndView对象。
07、HandlerAdapter将Controller执行结果ModelAndView返回给DispatcherServlet。
08、DispatcherServlet将ModelAndView传给ViewReslover(视图解析器)。
09、ViewReslover解析后返回具体View(视图)。
10、DispatcherServlet根据View进行渲染视图(即将模型数据填充至视图中)。
11、DispatcherServlet响应用户。

MVC即model view controller。

model层=entity层。存放我们的实体类,与数据库中的属性值基本保持一致。

service层。存放业务逻辑处理,也是一些关于数据库处理的操作,但不是直接和数据库打交道,他有接口还有接口的实现方法,在接口的实现方法中需要导入mapper层,mapper层是直接跟数据库打交道的,他也是个接口,只有方法名字,具体实现在mapper.xml文件里,service是供我们使用的方法。

mapper层=dao层,现在用mybatis逆向工程生成的mapper层,其实就是dao层。对数据库进行数据持久化操作,他的方法语句是直接针对数据库操作的,而service层是针对我们controller,也就是针对我们使用者。service的impl是把mapper和service进行整合的文件。

(多说一句,数据持久化操作就是指,把数据放到持久化的介质中,同时提供增删改查操作,比如数据通过hibernate插入到数据库中。)

controller层。控制器,导入service层,因为service中的方法是我们使用到的,controller通过接收前端传过来的参数进行业务操作,在返回一个指定的路径或者数据表。
MyBatis介绍
MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis,实质上Mybatis对ibatis进行一些改进。

MyBatis是一个优秀的持久层框架,它对jdbc的操作数据库的过程进行封装,使开发者只需要关注 SQL 本身,而不需要花费精力去处理例如注册驱动、创建connection、创建statement、手动设置参数、结果集检索等jdbc繁杂的过程代码。

Mybatis通过xml或注解的方式将要执行的各种statement(statement、preparedStatemnt、CallableStatement)配置起来,并通过java对象和statement中的sql进行映射生成最终执行的sql语句,最后由mybatis框架执行sql并将结果映射成java对象并返回。

Mybatis架构

1、 mybatis配置

SqlMapConfig.xml,此文件作为mybatis的全局配置文件,配置了mybatis的运行环境等信息。

mapper.xml文件即sql映射文件,文件中配置了操作数据库的sql语句。此文件需要在SqlMapConfig.xml中加载。

2、 通过mybatis环境等配置信息构造SqlSessionFactory即会话工厂

3、 由会话工厂创建sqlSession即会话,操作数据库需要通过sqlSession进行。

4、 mybatis底层自定义了Executor执行器接口操作数据库,Executor接口有两个实现,一个是基本执行器、一个是缓存执行器。

5、 Mapped Statement也是mybatis一个底层封装对象,它包装了mybatis配置信息及sql映射信息等。mapper.xml文件中一个sql对应一个Mapped Statement对象,sql的id即是Mapped statement的id。

6、 Mapped Statement对sql执行输入参数进行定义,包括HashMap、基本类型、pojo,Executor通过Mapped Statement在执行sql前将输入的java对象映射至sql中,输入参数映射就是jdbc编程中对preparedStatement设置参数。

7、 Mapped Statement对sql执行输出结果进行定义,包括HashMap、基本类型、pojo,Executor通过Mapped Statement在执行sql后将输出结果映射至java对象中,输出结果映射过程相当于jdbc编程中对结果的解析处理过程。

SSM框架讲解(史上最详细的文章) SSM框架是spring、springMVC、和mybatis框架的整合,是标准的MVC模式。标准的SSM框架有四层,分别是dao层(mapper),service层,controller层和View层。使用spring实现业务对象管理,使用springMVC负责请求的转发和视图管理,mybatis作为数据对象的持久化引擎。1)持久层dao层(mapper)层作用主要是做数据持久层的工作,负责与数据库进行联络的一些任务都封装在此。2)业务层Service层作用3)表现层作用作用。... 阅读详情

相关推荐

SSM框架原理,作用及使用方法

作用: SSM框架是spring MVC,spring 和 mybatis框架的整合,是标准的MVC模式,将整个系统划分为表现层,controller层,service层,DAO层四层。 使用spring MVC负责请求的转发和视图管理 spring实现业务对象管理,mybatis作为数据对象的持久化引擎 原理 SpringMVC: 1.客户端发送请求到DispacherServlet(分发器) 2.由DispacherServlet控制器查询HanderMapping,找到处理请求的controller

weixin_44026898的博客 1108

SSM框架详解

SSM框架是指将Spring、SpringMVC和MyBatis三个技术框架结合起来使用的一种开发模式。它的目标是通过整合这三个框架的优势,实现高效、灵活、可扩展的Web应用程序开发。Spring:提供了IoC(Inverse of Control,控制反转)和AOP(Aspect-Oriented Programming,面向切面编程)等功能,简化了企业级应用的开发流程。

m0_72410588的博客 3万+

SSM框架简单介绍

SpringMVC属于SpringFrameWork的后续产品,已经融合在SpringWebFlow里面。Spring框架提供了构建Web应用程序的全功能MVC模块。使用Spring可插入的MVC架构,从而在使用Spring进行WEB开发时,可以选择使用Spring的SpringMVC框架或集成其他MVC开发框架,如Struts1,Struts2等。SpringMVC分离了控制器、模型对象、过滤器以及处理程序对象的角色,这种分离让它们更容易进行定制。...

geejkse_seff的博客 1127

SSM框架

SSM(Spring+SpringMVC+MyBatis)框架集由Spring、MyBatis两个开源框架整合而成(SpringMVC是Spring中的部分内容)。常作为数据源较简单的web项目的框架 ...

hxxjxw的博客 1万+

SSM框架技术

SSM框架作为一种轻量级的Java Web开发框架,具有高效、易扩展、可维护、可测试等优势,适合开发各种规模的Web应用。在进行SSM框架开发软件时,需要掌握Spring、SpringMVC、MyBatis等基本技术,同时还需要掌握Maven、Git、数据库、前端技术等相关技术。通过熟练掌握这些技术,可以有效地提高软件开发效率,开发出高质量的Web应用。

llz19670的博客 1万+

SSM框架运行原理以及流程

ssm框架:包括,springMVC  --  spring --  mybatis springMVC  是基于MVC的框架 属于MVC框架的还有:Struts1 Struts2SpringMVC 获取值得方式: Struts1  actionForm(javabean中继承) Struts2  通过 set get  方法 Spr

u013161431的博客 1万+

利用ssm框架实现用户登录操作_实战开发Ssm框架实现的学生信息管理系统

本系统框架采用的是SSM,即spring、springMVC、mybaits,数据库采用的MySQL,前端采用当前最流行的管理类框架easyui,当然咱们本项目的重点是讲解ssm框架,所以最开始会给大家讲ssm框架原理,流程架构等,后面会结合具体的代码再反过去理解框架的概念原理,这样会有更好的理解,实战和理论必须结合才可以学的快、准、狠。基础开发环境开发工具:Eclipse(MyEclipse、i...

weixin_39718521的博客 1470

SSM框架介绍

Spring 整个项目中装配Bean的大工厂,在配置文件中可以指定使用特定的参数去调用实体类的构造方法来实例化对象,有两个核心分别是IOC(控制反转)和AOP(面向切面编程) IOC控制反转,简单说就是讲new关键字创建对象的权利交给Spring框架来管理,开发者只关注业务逻辑处理 AOP面向切面编程,通过预编译方式和运行期间动态代理实现程序功能的统一维护的一种技术,利用AOP可以对业务逻辑的各个部分进行隔离,降低业务逻辑之间的耦合度,提高代码的可重用性,同时提高了开发的效率,事务管理、日志文件打印通常用到

weixin_44093711的博客 2327

基于SSM的简单分页功能实现

基于SSM框架的简单分页实现简要说明项目结构分页原理实现代码(带详细注释)1.Page工具类 (比较重要的类,用来实现分页)2.UserDao.xml mybatis映射文件3.UserDao.java4.UserService.java5.UserServiceImpl.java6.DemoController.java (比较重要的类,会实现一些逻辑处理)7.User.java (差点漏了这个...

qq_43680542的博客 8657

【Spring+SpringMVC+Mybatis】SSM框架的整合、思想、工作原理和优缺点的略微讲解

SSM框架的整合、思想、工作原理和优缺点的略微讲解

H1727548的博客 9891

SSM框架构建的App信息管理平台开发指南

SSM(Spring + SpringMVC + MyBatis)框架是一种流行的Java EE开发架构,它结合了Spring、SpringMVC和MyBatis三个框架的优点。Spring提供企业级开发的基础设施支持,包括事务管理、依赖注入等功能;SpringMVC是基于模型-视图-控制器设计模式的Web层框架,负责处理Web层的请求;MyBatis是一款优秀的持久层框架,它提供了对象关系映射(ORM)的解决方案。

weixin_32673065的博客 1087

java ssm框架和php框架对比_SSM框架原理,作用及使用方法

---恢复内容开始---尊重原创:http://m.blog.csdn.net/dennis_wu_/article/details/73437097作用:SSM框架是spring MVC ,spring和mybatis框架的整合,是标准的MVC模式,将整个系统划分为表现层,controller层,service层,DAO层四层使用spring MVC负责请求的转发和视图管理spring实现业务对...

weixin_39933082的博客 739

SSM框架与Maven新手入门实战指南

本文还有配套的精品资源,点击获取 简介:SSM框架是Java Web开发中流行的Spring、Spring MVC和MyBatis框架的结合,为初学者提供了一个坚实的学习基础。本项目通过实例帮助新手快速掌握SSM框架的核心概念和常用功能,如文件上传、目录树展示、分页和基本的增删改查(CRUD)操作。它还讲解了如何使用Maven作为构建工具来管理项目依赖和构建流程。 ...

weixin_42452924的博客 964

java的ssm框架是什么_学JAVA的小伙伴速码:SSM框架的简单介绍

原标题:学JAVA的小伙伴速码:SSM框架的简单介绍框架就一定要学的SSM框架大家都学会了吗?小编这里就为框架入门的小伙伴们简单的整理了SSM的概念、原理和优势等内容,刚刚学SSM的同学千万不要错过哟。 一、SSM框架的简单介绍1、什么是SSM框架呢?SSM框架就是Spring、Spring MVC和MyBatis框架的缩写,是标准的MVC模式,将整个系统划分为四层:表现层、controller...

weixin_31544577的博客 2036

浅谈SSM框架原理及使用

浅谈SSM框架原理及使用         SSM框架是spring MVC,spring和mybatis框架的整合,是标准的MVC模式。将整个系统划分为视图(View)层、控制(Controller)层、业务逻辑(Service)层和数据访问(Dao)层四层。使用spring MVC负责请求的转发和视图管理,sprin...

Taurus 1223

浅谈Web的SSM框架

在经过一周的web开发后端的SSM框架学习,大致明白了SSM框架的运行流程。也在经过一周的小项目编码,我参与其中,更加体会到框架带来的方便快捷。SSM框架包括三大架构Spring,SpringMVC,MyBatis,三大架构各司其职,共同协作。接下来来了解SSM的运行流程。表现层(springMVC):Controller层(Handler层)负责具体的业务模块流程的控制,Controller层通...

maHX12138的博客 1282

SSM框架介绍

1、SSM框架简介 SSM框架是Spring MVC ,Spring和Mybatis框架的整合,是标准的MVC模式,将整个系统划分为View层,Controller层,Service层,DAO层四层,使用Spring MVC负责请求的转发和视图管理,Spring实现业务对象管理,Mybatis作为数据对象的持久化引擎。 2、SSM框架各层介绍 2.1、持久层(Mybatis):Dao层(mappe...

qq_43170213的博客 1031

ssm框架快速搭建

一、ssm框架简介 ssm:是Spring、SpringMVC、Mybatis的简称 1、Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其著作Expert One-On-One J2EE Development and Design中阐述的部分理念和原型衍生而来。它是为了解决企业应用开发的复杂性而创建的。Spring使...

qq_15901351的博客 882
上一篇: 网络分层osi七层模型TCP/IP四层模型
下一篇: JDBC连接数据库操作
gaoster
博客等级 码龄7年 25粉丝 121原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值