概述

本人使用过SSH框架一段时间,最后在优化项目的时候决定使用SSM框架,这两种框架的一些浅显的区别我在这里说下。

SSH框架是Struts+Spring+Hibernate而SSM是指的Spring-MVC+Spring+MyBatis,光从这两个缩写就可以看出来,如果比较两者的区别的话主要比较Struct和Spring-MVC以及Hibernate和MyBatis。

SpringMVC 对比 Struts

  1. Struts和Spring-MVC都是负责取转发的,但是两者针对request的请求上面区别很大,Struts是针对一个Action类来进行请求的,即一个Action类对应于一个请求,所以类拦截,请求的数据类共享。而Spring-MVC则是针对于方法级别的请求的,也就是一个方法对应于一个请求,属于方法拦截,请求的数据方法不共享。

  2. Spring-MVC的配置文件相对来说较为少,容易上手,可以加快软件开发的速度,亲身体验有效。

  3. Spring-MVC的入口是Servlet级别的而 Struts 的级别是Filter级别的。

Hibernate 对比 MyBatis

针对Hibernate和 MyBatis s对持久化类进行操作,他们之间的区别可以整理如下:

  1. Hibernate是一种O/R关系型,即完成数据库表和持久化类之间的映射,而MyBatiss是针对的SQL-Maping,个人理解是一种Hibernate把数据库给封装好以后,可以调用相应的数据库操作语句HQL,而MyBatis则是用的原始的数据库操作语句。

  2. 基于1中的原因,则Hibernate优化起来相对MyBatis较难。

  3. MyBatis入门较快,而Hibernate掌握起来相对较难。

  4. 针对高级查询,Mybatis需要手动编写SQL语句,以及ResultMap。而Hibernate有良好的映射机制,开发者无需关心SQL的生成与结果映射,可以更专注于业务流程。

  5. Hibernate数据库移植性很好,MyBatis的数据库移植性不好,不同的数据库需要写不同SQL。

小结

总结:SSH个人虽然感觉很笨重,但是对于理解MVC模型乃至IOC来说还是不错的,蛮适合练手的,但是SSM则是使用起来让人感觉飞快,无论面向OOP还是面向AOP编程,都给人一种通透的快感。

面试题:SSH 和 SSM 两个框架的浅显的区别?相关推荐

  1. SSH、SSM三种框架及表示层、业务层和持久层的理解

    Struts(表示层)+Spring(业务层)+Hibernate(持久层) SSH:Struts(表示层)+Spring(业务层)+Hibernate(持久层) Struts:Struts是一个表示 ...

  2. Java面试题:SSH和SSM原理对比总结以及牵扯到的面试问题

    当下流行的两种企业开发MVC开源框架,是我们Java程 序猿必备知识能力.MVC是Model-View-Controller的简写."Model" 代表的是应用的业务逻辑dao层. ...

  3. Java Web框架对比SSH和SSM

    SSH:Spring+Struts2+Hibernate SSM:Spring+SpringMVC+MyBaitis 两个框架都是IoC容器+MVC框架+ORM框架. IoC的意思是控制反转,意思是把 ...

  4. SSH与SSM框架的差别

    SSH和SSM的相同与不同之处 SSH 通常指的是 Struts2 做控制器(controller),spring 管理各层的组件,hibernate 负责持久化层. SSM 则指的是 SpringM ...

  5. Java Web学习总结(28)——Java Web项目MVC开源框架SSH和SSM比较

    SSH和SSM定义 SSH 通常指的是 Struts2 做控制器(controller),spring 管理各层的组件,hibernate 负责持久化层. SSM 则指的是 SpringMVC 做控制 ...

  6. SSM之Mybatis框架初步

    1. SSH:Spring 中间层(容器框架,整合框架) Struct(控制层,Servlet) Hibernate(DAO,持久层框架) Structs2  Hibernate 两个重量级框架,入门 ...

  7. SSH和SSM的区别(springmvc简介)

    SSH和SSM的区别:当下流行的两种企业开发MVC开源框架. SSH 通常指的是 Struts2 做控制器(controller),spring 管理各层的组件,hibernate 负责持久化层. S ...

  8. SSH与SSM的区别以及相关技术的流行度

    先来百度一下,看看目前在流行啥 百度搜索搜索关键词 百度返回数量 SSM Java SSH Java 可以看到是SSM胜出. 所在分层 SSH SSM 页面层(View) JSP JSP(已经被thy ...

  9. 深度对比学习Vue和React两大框架

    作为国内应用最广的两个框架,Vue 和 React 是前端必须掌握的内容,也是面试的重点.但大多数读者都只擅长其中一个框架,当面试涉及到另一个框架的内容时,就答不好了. 比如虚拟dom,两个框架中都有 ...

最新文章

  1. 【程序员跳槽】学弟被高薪挖走不到一年就后悔的无奈经历,到底是老板的水深?还是学弟太年轻?
  2. vs修改 exe名字
  3. 操作系统学习(五) 、代码段和数据段描述符
  4. git之一: 在windows下安装git和使用总结
  5. MySQL8.0二进制免编译部署过程详解(二)
  6. AutoCAD打印设置
  7. 【AD10】Altium Designer 10导入元件库图文教程
  8. Origin无法修改语言为灰色
  9. C#使用libVLC制作视频播放器时自定义鼠标事件的捕获或者忽略
  10. 将上线的网站的域名代理到本地
  11. wifi共享代码实践java_笔记本实现共享wifi上网
  12. grpc进阶篇之resolver
  13. 开启binary log功能
  14. 关于Android中使用WebView播放网络视频不能全屏的问题
  15. AutoCAD .Net 不同文档间复制对象
  16. 【海康威视单个摄像头读取视频流并保存本地】
  17. 百面机器学习(13)——生成式对抗网络
  18. 如何用淘宝引流卖产品?如何利用淘宝问答功能引流到微信?
  19. 数据存储单位的换算单位
  20. 爆款小游戏用的都是什么游戏开发引擎?

热门文章

  1. Docker技术笔记:Docker入门浅尝
  2. poj2104(划分树模板)
  3. 动态链表增删改查及排序功能
  4. 优秀ASP.NET程序员修炼之路
  5. LB 负载均衡的层次结构
  6. 11--Rails数据交互3
  7. Dev控件用法 aspxTreeList 无刷新 aspxGridView 数据
  8. 开源CDN加速管理工具 OpenCDN
  9. IT行业的日常工作方法 学习(转)
  10. 网络编程五种IO模型之poll模型