摘要:
毫无疑问,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 文档非常有限
由于文档管理不善,新用户很难发现它的优点