毫无疑问,Java 是当今世界上最重要的编程语言之一。js 框架给程序员提供了 一个能够构建程序的坚实基础。它包括定义的类和功能,用于硬件设备管理,与系统软件交互并处理输入,让开发人员变得更轻松。JavaScript 框架旨在支持动态网站,Web服务,Web资源和Web应用程序的开发。在本文中,搜集了 5 个关于Java Web框架的信息。前端
自离首次发布 10 多年以来,Spring MVC 框架仍然领先于竞争对手。随着时间的推移,它扩展成一个完整的MVC框架,并不断演变成一个全面的Java框架。做为集成特殊应用科学的分层J2EE / Java框架,该框架为软件工程师提供了用于 Web 应用程序配置,应用程序开发和安全项目的完整工具包。该框架以其发达的生态系统而闻名,它提供了许多附加选项,从SOAP Web服务,REST API到安全加密和受权。 程序员
优势:web
加强模块化的轻量级容器编程
能够跨各类平台进行部署浏览器
灵活的依赖注入使用安全
包括XML,Java和注释配置的三路配置服务器
经过POJO's缓解了注射测试的数据网络
缺点:多线程
学习曲线比较陡峭框架
新手实施比较困难
须要花费时间部署
Oracle 认为 JSF 是一个实用网络 Java 框架,旨在简化基于Web的UI的集成开发。虽然这个框架在Java开发方面不是很好,可是Oracle提供的文档很容易使用。这是一种标准化的技术,拥有丰富的工具和库,能够为你在高度复杂的应用程序中铺平道路。JSF规范容许启用标准用户界面组件的重用和扩展。它减小了建立和维护Java应用程序在服务器上运行和在目标客户端上呈现 UI 应用程序的痛苦。不只如此,它还提供简单的数据传输和可重用的UI组件。
优势
因为它能够建立可重复使用的组件,所以效率更高且一致
支持像EJB这样的JSF实现的优秀供应商(IBM,Oracle,JBoss等)
准备使用像Apache,Infragistics,Richfaces等组件
方便开发人员,特别是那些使用IDE软件的人
JSF的缺点
陡峭的学习曲线
没有考虑书签工具
不可扩展
原始Ajax支持
缺少灵活性
Google Web Toolkit(GWT)是一个开源开发工具集,使开发人员可以构建和优化复杂的JS前端应用程序。它的主要目标是提供高性能Web应用程序的开发,即便开发人员不熟悉 JavaScript,XMLHttpRequest 或浏览器等偏冷门的知识。为了让其可信度高,谷歌本身的许多产品,包括 AdSense,Hotel Finder,Wallet,AdWords 等都使用 GWT。
优势:
更容易学习
内置IDE支持重构Java代码
能够在客户端大量构建响应式Web应用程序,并减小服务器端的杂事
能够迭代地平滑地从典型的Web应用程序迁移到GWT应用程序
即便在使用AJAX的状况下,也具备内置的浏览器后退按钮支持
缺点:
仅对Java开发人员有利,对PHP或.NET的开发人员没有太大帮助
因为快速发展的GWT,有许多版本很难得到全部功能和接口
编译速度慢,须要使用专有方法来定义结构
Grails 是一个开源的Java Web框架,旨在将开发人员的生产力与默认值和Convention-over-Configuration API相提并论。它与Java虚拟机(JVM)相集成,同时提供强大的功能,包括编译时元编程,异步编程和领域特定语言。Grails采用强大的视图技术,集成的NoSQL / ORM支持,插件和Spring支持的依赖注入进行更新。让你能够轻松集成并互操做Java,Java EE和JVM容器。
优势:
Grails提供了一个快速的开发周期
很是适合小型和中型项目
各类插件可供选择
简单而使人易懂的文档
能够在不重启服务器的状况下更改配置
缺点:
使用运行时语言可能会很困难
开发多线程应用程序,GORM 可能会出现问题
复杂的集成过程
延迟运行时间
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 文档很是有限
因为文档管理不善,新用户很难发现它的优势