SSH 框架已经过时/淘汰

584 阅读2分钟

记得当年 java 的企业级框架还是 ssh 的天下(springstrutshibernate),但是现在感觉 spring 已经完全把那两个框架甩在后边了。用 spring 的人越来越多,用 struts 的人比原来少多了,用 hibernate 的就更少了。毕竟现在 it 人才流动性太大了,招人上来上手很重要,谁知道他什么时候就跑了。。( hibernate 太复杂了)。

ssh 是什么

struts2:通俗的讲就是为了完成 MVC 模型中的 C 的功能,也就是编写具体的业务逻辑的地方

从他的设计上来看就是请求到了 web 容器,然后经过了一系列的过滤器,再通过请求 FilterDispatcher 询问ActionMapper 是否需要调用某个 Action,如果要调用的话, 然后执行先前配置好的拦截器,就到了我们的具体逻辑,执行完之后,还会继续执行对应的拦截器和过滤器逻辑,最后返回给调用方。

Spring: 通俗的讲只是通过它的核心 IOC 来管理我们编写逻辑中间的一些 bean。我们通过 IOC 来减少耦合和简化对象的操作。

Hibernate: 是对象关系映射框架,简单的说,它就是对 JDBC 进行了非常轻量级的对象封装,目的是让操作数据库像操作对象一样简单。

这个就是 ssh 三者最开始的目的,他们各司其职,在缺乏框架的年代,很好的配合着,以至于一直流传了下来。

为什么说已经过时

现在提倡和流行的是前后端分离(这里指的分离是完全分离,而不是之前通过模版进行分离,前后端数据交互是根据 http api 进行的)。

后端设计的接口趋向于 Restful 的架构。为什么有这种变化,因为现在前端不仅仅是 web 端,在移动互联网时代 app 也是很大一部分。所以从后端的角度来看,他们都是客户端。

app 是没办法通过模版进行渲染的,只能通过 http 传输数据。这也是后端服务发展的趋势。

Spring+Struts+Hibernate 是越来越少了

Spring(or spring boot)+SpringMVC+Mybatis 的更多

Java 后端技术有很多,如果想要提高,最好的捷径就是踏踏实实的进行学习,对于刚工作不久的人来说,可以把学习 ssh框架的时间用来学习 SpringMVC,然后掌握 Spring 的核心,然后学习什么是 Restful 概念,最后可以了解 JDBC 的一些概念(前期不推荐学习 ORM 框架)。我相信可以有所收获和成长的。