只是一个一般性问题,欢迎讨论...
到目前为止,我非常喜欢 JSF,我对它还很陌生,但我更喜欢它而不是 Struts。从专业人士的角度来看,您认为 JSF 的未来光明吗?作为一个年轻的程序员,值得投资学习 JSF 2.0 而不是 Struts 或其他类似的框架吗?我应该坚持使用常规 JSP 吗?通过 JQuery 进行 Ajax 真的比 JSF 更简单吗?
我喜欢新技术,也喜欢迄今为止从 JSF 中看到的东西,但我也希望实用,大量 Google 搜索都会出现一些关于 JSF 2.0 的直言不讳的批评评论。
想法?
将 JSF 与 Struts 进行比较就像将苹果与橘子进行比较。 Struts 是基于请求/操作的 MVC 框架,而 JSF 是基于组件的 MVC 框架。 Struts 也已经老化了。在 IT 行业,你应该不断前进。通常,基于组件的 MVC 框架被视为基于请求/操作的 MVC 框架的进一步发展。
JSF 目前已经得到非常广泛的应用。此前确实受到了不少批评。您可以在问题中阅读其中的大部分内容JSF 2.0 的主要缺点是什么? https://stackoverflow.com/questions/3623911/what-are-the-main-disadvantages-of-java-server-faces-2-0JSF 的优势主要在于它是 Java EE 维护的标准以及相对大量的 3rd 方组件库的可用性(PrimeFaces http://primefaces.org, 丰富的面孔 http://jboss.org/richfaces, IceFaces http://www.icefaces.org, 开放面孔 http://openfaces.org/, Tomahawk http://myfaces.apache.org/tomahawk, ETC)。使用 JSF,可以非常轻松地快速开发外观漂亮的 CRUD 应用程序和 Web 表单。
然而,当JSF进入综合体时,可能会引起一些意想不到的意外。尽管 JSF 规范和参考实现 (Mojarra) 自最新的 1.2 版本以来已经相当成熟,但您可能会遇到一些与您的直觉相悖的非常具体的行为问题。有些只是“设计使然”,只有详细了解后才能理解howJSF 在幕后工作,这通常归结为 HTTP 协议的无状态本质。 JSF 从本质上“太多”地抽象了它,以至于您不再看到它。有些只是所使用的第 3 方组件库中的错误,但这并不是严格特定于 JSF 实现的。然而,如果您及时报告错误,大多数主要组件库中的错误/问题处理都相当不错。
至于 ajaxical 的东西,JSF 2.0 确实提供了很少的手动控制来手动触发 ajaxical 请求以及控制服务器端和客户端的视图树。很简单,因为它是一个基于组件的 MVC 框架,可以在两侧保留树状态。当你自己手中的阿贾克斯作品时,你必须考虑到双方。如果你really在基于 ajax/请求的操作中需要更多自由,那么基于组件的 MVC 框架根本就是错误的选择。您应该选择基于请求/操作的 MVC 框架(例如 Spring MVC、Struts 或 Stripes)以及 JS 库(例如 jQuery)。然而,您必须自己编写大量 HTML/CSS/JS 样板文件。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)