【SSH】泛泛谈SSM和SSH

简介: 【SSH】泛泛谈SSM和SSHhttp://www.bieryun.com/1669.html 最近在学SSH,但突然看到了SSM,感觉两者很相似,于是就开始打破砂锅问到底,网上找了很多资料,但是由于本人对SSM的认识只存在于理论上,所以就泛泛的谈论下自己对这两个java框架的认识,做一个小总结。

【SSH】泛泛谈SSM和SSH

最近在学SSH,但突然看到了SSM,感觉两者很相似,于是就开始打破砂锅问到底,网上找了很多资料,但是由于本人对SSM的认识只存在于理论上,所以就泛泛的谈论下自己对这两个java框架的认识,做一个小总结。

记得很久前看到一个标题,名为“MVC已死”,说的MVC这种思想已经有一些不适应了,新的模式MOVE,正在茁壮成长,MOVE指即Models(模型)、Operations(操作)、Views(视图)、Events(事件),当时看了很多资料,觉得人家分析的真棒,不过现在一点印象都没有了,为什么?因为没有总结,没有形成自己的认识,所以尽管自己没有学习SSM,但是还是想总结对比下,起码来个宏观的认识也是好的。

 

我们通常所说的SSH指的是:Spring+Struts+Hibernate。而SSM指的是:spring +SpringMVC + MyBatis。关于SSM和SSH 对比其实更多的从SpringMVC 和 Struts这一方面对比,和Hibernate与MyBatis的对比。

 

      SpringMVC与Struts :

 
 

首先两者有个共同之处,那就是两者都数据javaweb层的开发框架,都是mvc模式的的经典产品,都实现了页面分离控制的功能,但是两者之间是有区别的。

有一种言论,或许已经成为了部分人眼中的事实,那就是SpringMVC已经超越了Struts,在开发中,人们更愿意使用SpringMVC而不是Struts。

因为Spring MVC属于SpringFrameWork的后续产品,已经融合在SpringWeb Flow里面。Spring MVC 分离了控制器、模型对象、分派器以及处理程序对象的角色,这种分离让它们更容易进行定制。

而且由于同是属于一个开发公司,所以SpringMVC比Struts更容易契合Spring技术,在扩展和灵活性上更胜一筹。

Struts的优势在于静态注入,插件机制和拦截器链,但是struts存在漏洞,经常会被作为攻击点进行冲击。相比更加安全简单的SpringMVC,开发者渐渐开发放弃了它。

 

      Hibernate 与MyBatis:

 
 

Hibernate与Mybatis都是流行的持久层开发框架,一句话概括:MyBatis 简单易上手;hibernate成熟,市场推广率高。

MyBatis可以进行更为细致的SQL优化,可以减少查询字段。

MyBatis容易掌握,而Hibernate门槛较高。

更重要的是,mybatis提供了对应各种用途、功能的插件,有需求?好,来个插件就搞定。而hibernate在这一方面是远远比不上mybatis的。

 

Hibernate的DAO层开发比MyBatis简单,Mybatis需要维护SQL和结果映射。

Hibernate对对象的维护和缓存要比MyBatis好,对增删改查的对象的维护要方便。

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

Hibernate有更好的二级缓存机制,可以使用第三方缓存。MyBatis本身提供的缓存机制不佳。

但是hibernat缺点很明确,如果涉及到多张关联表的调用时:

1. 多表关联等比较复杂,使用的成本并不低;

2. 效率比较低,在大型项目中很少会使用到它,因为sql都是自动生成的,不太好进行人工的优化。

 

 

       结论

综上,在如今的开发过程中,人们越来越多的喜欢选择SSM,因为它更适合敏捷开发,而敏捷开发是现在市场备受推广的一种方式。

 

我想说,我们应该努力学习,第一:知识有个演变的过程,他们都是相同,有了基础学习新的会省力很多。第二:抓紧时间学习,因为我们需要学习的东西太多了。因为这些都是几年前的事情了。

相关文章
WXM
|
9月前
|
Java 应用服务中间件 网络安全
Eclipse运行SSM/SSH项目教程
Eclipse运行SSM/SSH项目教程
WXM
312 0
|
SQL XML Java
Mybatis01入门+使用和配置+面试题mybatis与hibernate的区别+ssm与ssh2开发对比
Mybatis01入门+使用和配置+面试题mybatis与hibernate的区别+ssm与ssh2开发对比
Mybatis01入门+使用和配置+面试题mybatis与hibernate的区别+ssm与ssh2开发对比
|
SQL 前端开发 Java
面试官:SSH 和 SSM 框架有什么区别?怎么选?
面试官:SSH 和 SSM 框架有什么区别?怎么选?
462 0
|
SQL 前端开发 Java
Servlet、SSH、SSM及SpringBoot总结&投票
往期推送分别利用Servlet、SSH、SSM及SpringBoot技术实现了简单的登录、注册、增、删、改、查等功能,并介绍了基本技术原理,目的即是通过简单的Java项目实例对以上技术原理更深入的了解、学习,从而为复杂的系统项目的开发奠定基础以及面试时更能够对JavaWeb技术的把控。
|
Java 应用服务中间件 网络安全
SSH、SSM项目在没有使用maven的情况下,使用tomcat 启动
tomcat 使用,老项目在没有使用maven的情况下
1492 0
|
2月前
|
存储 Java 关系型数据库
ssm026校园美食交流系统(文档+源码)_kaic
本文介绍了基于Java语言和MySQL数据库的校园美食交流系统的设计与实现。该系统采用B/S架构和SSM框架,旨在提高校园美食信息管理的效率与便捷性。主要内容包括:系统的开发背景、目的及内容;对Java技术、MySQL数据库、B/S结构和SSM框架的介绍;系统分析部分涵盖可行性分析、性能分析和功能需求分析;最后详细描述了系统各功能模块的具体实现,如登录、管理员功能(美食分类管理、用户管理等)和前台首页功能。通过此系统,管理员可以高效管理美食信息,用户也能方便地获取和分享美食资讯,从而提升校园美食交流的管理水平和用户体验。
|
1月前
|
Java 关系型数据库 MySQL
weixin050高校体育场管理系统+ssm(文档+源码)_kaic
本文针对高校体育场管理系统的开发与实现进行详细介绍。随着经济快速发展,人们对手机软件需求增加,高校体育场管理系统应运而生。系统采用JAVA技术、Mysql数据库和SSM框架等成熟技术,通过分析功能需求、可行性及性能,设计出包含管理员、用户和学生角色的功能模块。系统实现用户注册登录、信息管理等功能,简化传统手工统计模式,提高管理效率,满足用户对信息获取的及时性与准确性需求。
weixin050高校体育场管理系统+ssm(文档+源码)_kaic
|
1月前
|
前端开发 Java 关系型数据库
基于ssm的社区物业管理系统,附源码+数据库+论文+任务书
社区物业管理系统采用B/S架构,基于Java语言开发,使用MySQL数据库。系统涵盖个人中心、用户管理、楼盘管理、收费管理、停车登记、报修与投诉管理等功能模块,方便管理员及用户操作。前端采用Vue、HTML、JavaScript等技术,后端使用SSM框架。系统支持远程安装调试,确保顺利运行。提供演示视频和详细文档截图,帮助用户快速上手。
79 17
|
1月前
|
前端开发 Java 关系型数据库
基于ssm的超市会员(积分)管理系统,附源码+数据库+论文,包安装调试
本项目为简单内容浏览和信息处理系统,具备管理员和员工权限。管理员可管理会员、员工、商品及积分记录,员工则负责积分、商品信息和兑换管理。技术框架采用Java编程语言,B/S架构,前端使用Vue+JSP+JavaScript+Css+LayUI,后端为SSM框架,数据库为MySQL。运行环境为Windows,JDK8+Tomcat8.5,非前后端分离的Maven项目。提供演示视频和详细文档,购买后支持免费远程安装调试。
91 19
|
1月前
|
前端开发 JavaScript Java
[Java计算机毕设]基于ssm的OA办公管理系统的设计与实现,附源码+数据库+论文+开题,包安装调试
OA办公管理系统是一款基于Java和SSM框架开发的B/S架构应用,适用于Windows系统。项目包含管理员、项目管理人员和普通用户三种角色,分别负责系统管理、请假审批、图书借阅等日常办公事务。系统使用Vue、HTML、JavaScript、CSS和LayUI构建前端,后端采用SSM框架,数据库为MySQL,共24张表。提供完整演示视频和详细文档截图,支持远程安装调试,确保顺利运行。
105 17

热门文章

最新文章