尽管我花了一整天的时间开发 JSF 应用程序,但我从未接受过任何有关此事的培训,而且我必须管理我仍然对整个 JSF 难题如何组合在一起感到困惑。JSF 在我看来有点混乱。
- jsf-api
- jslt
- 小面
- 我的脸
- 特立尼达
- 多巴哥
- jsp接口
如果有人能给我简要介绍一下这些组件,我将不胜感激,哪些是标准的,哪些可以省略,哪些可以/需要一起使用
JSP 和 JSTL
JSP 经历了多次迭代,但这是 Java EE 的核心动态页面技术。这是一个可服务的 API,但使用 JSP 通常意味着对代码/资源进行更多的手动管理。
JSTL 是 JSP 标准模板库。这是一组标准的 JSP 标记。不要将这些标签与 JSF 标签混用;它们属于不同的编程模型。
JSF API
JSF 规范。这是 JSF Model-View-Presenter 框架的核心。这指定了一组简单的核心组件和核心生命周期工件。有两个广为人知的实现:Mojarra(开源的 Sun API)和 Apache MyFaces。Java EE 5 及更高版本的一部分。
小面
为 JSF 设计的一种视图技术。使用它而不是 JSP。您不能在 Facelets 视图中使用 JSP 标记。这在 Java EE 5 中不是标准的,但在 JSF2(以及即将到来的 Java EE 6)中是标准化的。Facelets 提供的更好的模板通常意味着您可以减少对 3rd 方库的依赖。
Facelets 提供了一些看起来像 JSP JSTL 标签的标签,但不共享任何代码。通常也应避免使用这些标签(有关建议,请参阅 Facelets 文档)。
阿帕奇特立尼达和多巴哥
These are JSF libraries that provide components and other facilities. Because the core set of controls is rather basic, it is common to use such libraries, especially if Facelets is not used. These are not part of the Java EE standard. Library compatibility varies. See also jsfmatrix.net.