五大 JAVA Web 框架的优缺点对比,Spring MVC 领先

栏目: IT资讯 · 发布时间: 7年前

内容简介:毫无疑问,Java 是当今世界上最重要的编程语言之一。js 框架给程序员提供了 一个可以构建程序的坚实基础。它包括定义的类和功能,用于硬件设备管理,与系统软件交互并处理输入,让开发人员变得更轻松。JavaScrip...

毫无疑问,Java 是当今世界上最重要的编程语言之一。js 框架给 程序员 提供了 一个可以构建程序的坚实基础。它包括定义的类和功能,用于硬件设备管理,与系统软件交互并处理输入,让开发人员变得更轻松。JavaScript 框架旨在支持动态网站,Web服务,Web资源和Web应用程序的开发。在本文中,搜集了 5 个关于Java Web框架的信息。

1.Spring MVC - Java Web 框架

自离首次发布 10 多年以来,Spring MVC 框架仍然领先于竞争对手。随着时间的推移,它扩展成一个完整的MVC框架,并不断演变成一个全面的 Java 框架。作为集成特殊应用科学的分层J2EE / Java框架,该框架为软件工程师提供了用于 Web 应用程序配置,应用程序开发和安全项目的完整 工具 包。该框架以其发达的生态系统而闻名,它提供了许多附加选项,从SOAP Web服务,REST API到安全加密和授权。  

优点:

  • 增强模块化的轻量级容器

  • 可以跨各种平台进行部署

  • 灵活的依赖注入使用

  • 包括XML,Java和注释配置的三路配置

  • 通过POJO's缓解了注射测试的数据

缺点:

  • 学习曲线比较陡峭

  • 新手实施比较困难

  • 需要花费时间部署

2.JSF - Java Web 框架

Oracle 认为 JSF 是一个实用网络 Java 框架,旨在简化基于Web的UI的集成开发。虽然这个框架在Java开发方面不是很好,但是Oracle提供的文档很容易使用。这是一种标准化的技术,拥有丰富的工具和库,可以为你在高度复杂的应用程序中铺平道路。JSF规范允许启用标准用户界面组件的重用和扩展。它减少了创建和维护Java应用程序在服务器上运行和在目标客户端上呈现 UI 应用程序的痛苦。不仅如此,它还提供简单的数据传输和可重用的UI组件。 

优点  

  • 由于它可以创建可重复使用的组件,因此效率更高且一致

  • 支持像EJB这样的JSF实现的优秀供应商(IBM,Oracle,JBoss等)

  • 准备使用像Apache,Infragistics,Richfaces等组件

  • 方便开发人员,特别是那些使用IDE软件的人

JSF的缺点

  • 陡峭的学习曲线

  • 没有考虑书签工具

  • 不可扩展

  • 原始Ajax支持

  • 缺乏灵活性

3.Google Web Toolkit - Java Web 框架

Google Web Toolkit(GWT)是一个开源开发工具集,使开发人员能够构建和优化复杂的JS前端应用程序。它的主要目标是提供高性能Web应用程序的开发,即使开发人员不熟悉 JavaScript,XMLHttpRequest 或浏览器等偏冷门的知识。为了让其可信度高,谷歌自己的许多产品,包括 AdSense,Hotel Finder,Wallet,AdWords 等都使用 GWT。     

优点:

  • 更容易学习

  • 内置IDE支持重构Java代码

  • 可以在客户端大量构建响应式Web应用程序,并减少服务器端的琐事

  • 可以迭代地平滑地从典型的Web应用程序迁移到GWT应用程序

  • 即使在使用AJAX的情况下,也具有内置的浏览器后退按钮支持

缺点:

  • 仅对Java开发人员有利,对 PHP 或.NET的开发人员没有太大帮助

  • 由于快速发展的GWT,有许多版本很难获得所有功能和接口

  • 编译速度慢,需要使用专有方法来定义结构

4.Grails - Java Web 框架

Grails 是一个开源的Java Web框架,旨在将开发人员的生产力与默认值和Convention-over-Configuration API相提并论。它与Java虚拟机(JVM)相集成,同时提供强大的功能,包括编译时元编程,异步编程和领域特定语言。Grails采用强大的视图技术,集成的NoSQL / ORM支持,插件和Spring支持的依赖注入进行更新。让你可以轻松集成并互操作Java,Java EE和JVM容器。 

优点:

  • Grails提供了一个快速的开发周期

  • 非常适合小型和中型项目

  • 各种插件可供选择

  • 简单而令人易懂的文档

  • 可以在不重启服务器的情况下更改配置

缺点:

  • 使用运行时语言可能会很困难

  • 开发多线程应用程序,GORM 可能会出现问题

  • 复杂的集成过程

  • 延迟运行时间

5.Struts 2 - Java Web框架

Apache的Struts是一个用于开发现代Java Web应用程序的开源免费MVC框架。它包含一组类和接口,共同协作开发Web应用程序。它适用于许多Java应用程序的网络框架,并且受到了很多社区的支持。为了进一步扩展Struts Java框架,Struts 2 作为后继者有了很大的改变。这个框架最适合于开发当代 Java EE web 应用程序的工程师,Apache 软件基金会借助 Struts 2 为开发人员提供了一个用于开发面向网络的,企业级应用程序,并优化整个开发流程的工具。

优点:

  • 没有线程安全问题

  • 依赖注入使得测试更简单

  • 它可以使用“对象图导航语言”(OGNL)

  • Struts 2框架的Servlet上下文以简单的地图形式表示 

  • 它支持通过验证方法进行手动验证,并且还包含子框架验证

缺点:

  • 由于它与Struts 1完全不同,难以迁移

  • Struts 2 文档非常有限

  • 由于文档管理不善,新用户很难发现它的优点

来自:findnerd


【声明】文章转载自:开源中国社区 [http://www.oschina.net]


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Tales from Facebook

Tales from Facebook

Daniel Miller / Polity Press / 2011-4-1 / GBP 55.00

Facebook is now used by nearly 500 million people throughout the world, many of whom spend several hours a day on this site. Once the preserve of youth, the largest increase in usage today is amongst ......一起来看看 《Tales from Facebook》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

SHA 加密
SHA 加密

SHA 加密工具

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具