java框架组合ssm和ssh各自的优势是什么?
SSM和SSH不同主要在MVC实现方式,以及ORM持久化方面不同(Hiibernate与Mybatis)。
SSM优势:
SSM越来越轻量级配置,将注解开发发挥到极致,且ORM实现更加灵活,SQL优化更简便。
SSH优势:
而SSH较注重配置开发,其中的Hiibernate对JDBC的完整封装更面向对象,对增删改查的数据维护更自动化,但SQL优化方面较弱,且入门门槛稍高。
SSH 通常指的是 Struts2 做控制器(controller),spring 管理各层的组件,hibernate 负责持久化层。
SSM 则指的是 SpringMVC 做控制器(controller),Spring 管理各层的组件,MyBatis 负责持久化层。
共同点:
1、Spring依赖注入DI来管理各层的组件。
2、用面向切面编程AOP管理事物、日志、权限等。
不同点:
1、Struts2 和 SpringMVC 控制器(controller)控制视图和模型的交互机制的不同,
2、Struts2是Action类级别,SpringMVC是方法级别,更容易实现RESTful风格。
扩展资料
SSM和SSH是当下流行的两种企业开发MVC开源框架。
MVC,即模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面。
在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。框架之所以流行,在于其易复用和简化开发,精髓在思想,掌握了核心思想,掌握其他类似框架也不会有问题。
2024-10-28 广告
SSH : Struts2+Spring+Hibernate
SSM: Spring+SpringMVC+mybatis
spring 底层的类库是一样的(组件)
Struts2和 Spring MVC的相同点:spring用来初涉依赖注入(通过管理注释来控制各层的组件(方法)),2 事物 权限 日志 这些都是aop(切面编程)
不同: Struts2和spring mvc 控制器 试图 模型 机制不一样。Struts2是action级别的,spring mvc 既然有mvc 就是把 界面层(三层架构)分的更细,实现web api 更方便。Struts漏洞一个接一个,这点就不好了(如果有大佬吧struts2封装改写一部分也不错 ),spring 不清楚 哈哈。但是spring mvc 配置简单一些, 理解起来很容易,结构清晰
拦截器:Struts是类控制,一个功能下来就是一个类。。, spring mvc 是方法,你可以理解为每个方法都是url,都可以控制.
不同点其实还有很多...慢慢体会吧。
Hibernate和mybatis的区别:
这个的话自己去百度找csdn ,多看看一样的文章然后找答案。你给 移植,维护,性能,缓存 等等各方面去比较。
hibernate 没玩过, mybatis 比较简单,直接上手。 可以用工具生成映射文件(主要维护这个),数据库表变了直接在mapper 改sql 就行,不同的数据库 要写不同的sql,这个就有点麻烦。主要的问题还是 配置,开始可能要折腾一段时间,习惯了就666了。
我是给net转过来的,拿起ssm 就开搞,配置遇到不少坑,慢慢来。反正我上手挺快。orm框架用起来 主要时间花在配置上,代码量少了很多。
是不是大项目看需求,看公司,和团队技术。目前是用ssm的比较多 ,其实2个框架都可以看看和学习,先学会使用,然后再看底层是怎么实现的。如果真要上手搞项目还是跟主流吧。
如果有说的不对的 大家别打我,我已开启盾墙 :P
用最通俗易懂的话说,就是m是h的缩减版。
就是说m种包含的内容是一些开发项目中比较常用的。
而h算是完整版,包含了更多的内容,
可以说h比m的内容多太多了。
如果项目比较小,那么用m是比较好的,轻量级,速度快,效率高。
如果是大型项目,必选h,
手敲,如果觉得可以解决您的疑惑,请采纳。谢谢。
ssm和ssh说白了就是m和h的区别
用最通俗易懂的话说,就是m是h的缩减版。
就是说m种包含的内容是一些开发项目中比较常用的。
而h算是完整版,包含了更多的内容,
可以说h比m的内容多太多了。
如果项目比较小,那么用m是比较好的,轻量级,速度快,效率高。
如果是大型项目,必选h,
手敲,如果觉得可以解决您的疑惑,请采纳。谢谢。
ssm和ssh说白了就是m和h的区别
用最通俗易懂的话说,就是m是h的缩减版。
就是说m种包含的内容是一些开发项目中比较常用的。
而h算是完整版,包含了更多的内容,
可以说h比m的内容多太多了。
如果项目比较小,那么用m是比较好的,轻量级,速度快,效率高。
如果是大型项目,必选h,
手敲,如果觉得可以解决您的疑惑,请采纳。谢谢。