技术文章

JAVA的SSH框架真的过时了吗?

关于SSH

我刚入行的时候,SSH还是挺火的,额...大概是十年前了。

Spring:首先现在Spring依然很火,也归功于Spring一直在快速迭代升级,现在大多数项目都在用Spring;而且现在Spring下面的子框架非常的多,这里说的Spring主要还是指Spring Framework。

Hibernate:一直没有被淘汰,但是一直也火不起来,现在更多的项目在用Mybatis或者JPA。说实话,我觉得Hibernate还是挺强的,但是想用好Hibernate不容易。

Struts:Struts1和2我都有用过,到现在已经没落了,新项目很少有人在用,至少我们好多年前就不用了(除非是一直维护的老项目),现在Struts的工作基本上被Spring MVC代替了。而且Struts一而再,再而三的曝出漏洞,在信息安全方面有着很大的隐患。
 

SSH框架

  为什么说SSH过时了?

现在很流行的一个架构是前后端分离,为什么这种架构这几年会很火,我觉得还是由于移动端的快速发展。

以往的系统都是以PC端为主,开发一套程序,页面和后端代码都在一个包里,部署好了就能用。

但是现在,不仅仅需要支持PC端,还要支持各种移动端,如果再专门为移动端开发一套应用,不仅费时,而且需要维护多套程序。

所以现在前端就是纯页面,后端只提供接口,前后端的交互是通过Http接口。

SSH框架

现在学什么?

对于SSH来说,Spring可以好好学习一下(当然要学习新版本),Hibernate可以了解一下,Struts就不要再学习了。

现在单体应用,使用最多的是SSM组合:Spring + Spring MVC + Mybatis;

关于JPA,我认为大多数的系统不适用,它适用于微服务场景下,对数据的查询都是单表查询(SQL简单),大多数公司的项目都到不了这个程度;不过虽然可能用不上,还是要学习一下。

Spring boot:现在很流行的一个框架,提供了各种启动器、简化配置、方便集成、有助于开发效率。

如果接触前后端分离,甚至是微服务的架构,需要熟悉HTTP接口、Rest API,最好可以掌握一套微服务框架,例如Spring Cloud、或者Dubbo(如果不是工作需要,我推荐Spring Cloud)。