长沙Java培训:JAVA的三大框架讲解分享
Spring Boot出现之前,我们常说的三大框架是 SpringMVC Spring Mybatis(SSM)。Spring Boot 出来之后,就直接上 Spring Boot 就好。所以说主要的框架的话其实有四个。下面千锋长沙Java培训讲师讲解下JAVA的三大框架。
在14年以前,行业内用得最多的Java三大框架是Struts、Spring和Hibernate ,简称SSH;14年以后逐步开始采用Spring、SpringMVC和MyBatis,简称SSM;而现在Java开发用得最多的框架其实是SpringBoot。
1、SSH框架的特点
SSH框架是以Struts框架进行MVC分离、控制业务跳转,同时使用Hibernate进行持久化,最后配合Spring的统一管理进行实现的开发框架。相对于传统的J2EE开发框架来讲性能相对较高、资源消耗相对较少。具体优势如下:
框架进行了代码分层,将Java代码和HTML代码进行分层,大大降低了开发人员的技术难度,不需要同时精通Java后端知识和Web前端知识。由于使用了Struts框架进行了MVC分离,降低了各层代码间的耦合度。与Spring的AOP机制相互独立,互不影响。使用SSH框架开发项目,能够大大提高项目的开发效率与开发质量。良好的扩展性和维护性。
2、SSM框架的特点
SSM框架看着是Spring+SpringMVC+MyBatis三个框架整合而成的,其实SpringMVC属于Spring框架,所以相当于SSM框架就是Spring和Mybatis两个框架的整合运用。那SSM框架的优势又有哪一些呢?
对于MVC模式的实现,SpringMvc更加的轻量。由于SpringMvc本身属于Spring,因此与Spring的配合使用契合度更高。Mybatis相对Hibernate更加轻量,同时将Sql和业务代码进行了很好的解耦。MyBatis的学习门槛更低,相对于传统的JDBC差距不大,更好入门及掌握。
3、SSH和SSM框架对比
两个框架的主要区别在于两点,第一、MVC分离的实现方式前者为Struts,后者为SpringMvc;第二、持久层的使用前者为Hibernate,后者为MyBatis。所以这两个框架几乎所有的不同都是由这两点产生的,那么具体情况是怎样的呢?
Struts vs SpringMvc
由于SpringMvc针对方法进行设计,而Struts针对类进行设计,相对来讲SpringMvc的速度相对更快。SpringMvc配置更加简单,可以说完全0配置,开发效率更高。SpringMvc的学习门槛更低,使用更简单。SpringMvc扩展性更强,更灵活。
Hibernate vs MyBatis
MyBatis更加轻量,学习门槛更低,但相对功能全面性来讲Hibernate更好。如果你的项目中仅仅使用简单的增删改查功能,选用Hibernate会让你节省不少的开发时间。反之如果需要使用到较多的sql复杂语句,则选用MyBatis更加灵活。MyBatis默认的SQL查询性能更高,而Hibernate会进行所有字段查询,性能就相对较低了。Hibernate有自己的日志统计功能,而MyBatis需要使用Log4j实现。MyBatis缓存特性相对Hibernate更高。
4、SpringBoot框架
SpringBoot框架是基于Spring4.0设计的,使用SpringBoot框架进行应用开发能够使用Spring框架所有优秀特性,同时还能够减少各种复杂的配置过程,降低各依赖包的冲突、增强系统的稳定性。我们可以将SpringBoot框架理解为我们使用SSM框架的一个脚手架框架使用,使用它能够非常方便的构建我们的应用。那SpringBoot框架具体有哪些特点呢:
可以非常方便和快速的构建Spring相关应用可以快速构建可执行的Jars和Wars文件内嵌了Servlet容器,如Tomcat、Jetty、Undertow使用SpringBoot框架开发项目,可以让Spring的配置操作几乎为零SpringBoot框架提供了运行时监控功能框架极大的提高了项目开发和部署的效率…
![](/imgs2022/form-ad.jpg)
猜你喜欢LIKE
最新文章NEW
相关推荐HOT
更多>>热门推荐
零基础必看的前端HTML+CSS教程
沸Java培训新手实战必备!单机版坦克大战分步实现项目源码
热3种Javascript图片预加载的方法详解
热长沙前端培训:一招教你用vue3+canvas实现坦克大战
新互联网凉了?参加长沙Java培训能找到工作吗?
长沙Java培训实战项目,出游咨询订票系统开发流程
不参加长沙Java培训能学会Java吗?2022Java技能学习路线图
千锋长沙Java培训分享之怎么学习Java集合?
千锋长沙前端培训分享之JavaScript面向对象编程思想详解
千锋长沙前端培训分享之web前端的回流和重绘
千锋长沙前端培训分享之3种Javascript图片预加载的方法详解
千锋长沙前端培训分享之利用Jest测试React组件
千锋长沙前端培训分享之JavaScript中Slice的用例
千锋长沙java培训分享之Socket编程