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

作者:CSU_Dennis

https://blog.csdn.net/dennis_wu_/article/details/73437097

作用:

SSM框架是spring MVC ,spring和mybatis框架的整合,是标准的MVC模式,将整个系统划分为表现层,controller层,service层,DAO层四层。

使用spring MVC负责请求的转发和视图管理。

spring实现业务对象管理,mybatis作为数据对象的持久化引擎。

原理:

SpringMVC:

1.客户端发送请求到DispacherServlet(分发器)

2.由DispacherServlet控制器查询HanderMapping,找到处理请求的Controller

3.Controller调用业务逻辑处理后,返回ModelAndView

4.DispacherSerclet查询视图解析器,找到ModelAndView指定的视图

5.视图负责将结果显示到客户端

Spring:我们平时开发接触最多的估计就是IOC容器,它可以装载bean(也就是我们Java中的类,当然也包括service dao里面的),有了这个机制,我们就不用在每次使用这个类的时候为它初始化,很少看到关键字new。另外spring的aop,事务管理等等都是我们经常用到的。

Mybatis:mybatis是对jdbc的封装,它让数据库底层操作变的透明。mybatis的操作都是围绕一个sqlSessionFactory实例展开的。mybatis通过配置文件关联到各实体类的Mapper文件,Mapper文件中配置了每个类对数据库所需进行的sql语句映射。在每次与数据库交互时,通过sqlSessionFactory拿到一个sqlSession,再执行sql命令。

使用方法:

要完成一个功能:

  1. 先写实体类entity,定义对象的属性,(可以参照数据库中表的字段来设置,数据库的设计应该在所有编码开始之前)。
  2. 写Mapper.xml(Mybatis),其中定义你的功能,对应要对数据库进行的那些操作,比如 insert、selectAll、selectByKey、delete、update等。
  3. 写Mapper.java,将Mapper.xml中的操作按照id映射成Java函数。
  4. 写Service.java,为控制层提供服务,接受控制层的参数,完成相应的功能,并返回给控制层。
  5. 写Controller.java,连接页面请求和服务层,获取页面请求的参数,通过自动装配,映射不同的URL到相应的处理函数,并获取参数,对参数进行处理,之后传给服务层。
  6. 写JSP页面调用,请求哪些参数,需要获取什么数据。

DataBase ===> Entity ===> Mapper.xml ===> Mapper.Java ===> Service.java ===> Controller.java ===> Jsp.

原文发布于微信公众号 - 程序员宝库(chengxuyuanbaoku)

原文发表时间:2018-08-10

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏程序工场

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

SSM框架是spring MVC ,spring和mybatis框架的整合,是标准的MVC模式,将整个系统划分为表现层,controller层,service层...

1481
来自专栏idba

快速备份恢复工具mydumper/myloader

一 前言 大家对于MySQL的逻辑备份工具mysqldump应该都比较了解,本文介绍一款由MySQL ,Facebook 等公司的开发维护另外一套逻辑备份恢...

5253
来自专栏微信公众号:Java团长

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

SSM框架是spring MVC ,spring和mybatis框架的整合,是标准的MVC模式,将整个系统划分为表现层,controller层,service层...

982
来自专栏乐沙弥的世界

快速体验MyCAT

横空出世的MyCat截至到2015年4月,保守估计已经有超过60个项目在使用,主要应用在电信领域、互联网项目,大部分是交易和管理系统,少量是信息...

2141
来自专栏散尽浮华

Mysql备份系列(3)--innobackupex备份mysql大数据(全量+增量)操作记录

在日常的linux运维工作中,大数据量备份与还原,始终是个难点。关于mysql的备份和恢复,比较传统的是用mysqldump工具,今天这里推荐另一个备份工具in...

36410
来自专栏iMySQL的专栏

MySQL FAQ 系列 : 如何安全地关闭 MySQL 实例

本文分析了 mysqld 进程关闭的过程,以及如何安全、缓和地关闭 MySQL 实例,对这个过程不甚清楚的同学可以参考下。

2850
来自专栏hbbliyong

attempt to write a readonly database错误的解决(C#,SQLite)

  今天打包WPF程序,安装后总是打不开,查看监控日志原来是SQLite的问题,报错如图 ? 当向SQLite数据库中存入新纪录时总是显示attempt to ...

5646
来自专栏张善友的专栏

Centos 使用YUM安装MariaDB

1、在 /etc/yum.repos.d/ 下建立 MariaDB.repo,内容如下: [azureuser@mono etc]$ cd /etc/yum...

3369
来自专栏Python小屋

使用Python开发SQLite代理服务器

SQLite数据库使用单个磁盘文件,并且不需要像Oracle、MSSQL、MySQL等数据库管理系统那样启动服务,使用非常灵活方便。但是SQLite也有个很严重...

4346
来自专栏我是攻城师

ElasticSearch里面的偏好查询

2715

扫码关注云+社区

领取腾讯云代金券