`
- 浏览:
21049 次
- 性别:
- 来自:
杭州
-
最近又要换项目组了,又是没用过的技术,这两年用了不下10种技术或者框架,看着很牛是不是,我只想说,用了不精不如自挂东南枝。
新项目要学JSF有木有,话说Velocity刚刚用熟反应不过来有木有,又要记一堆的标签和属性有木有,面向组件有木有,事件驱动有木有,生命周期很复杂有木有…
抱怨归抱怨,我们还是要以一颗好学且崇敬的心去学习每一门技术。
好吧,今天心态不好,以下内容几乎全是转的,望周知…
JavaServer Faces (JSF):JSF是一种用于构建 Web 应用程序的新标准Java框架。它提供了一种以组件为中心来开发 Java Web 用户界面的方法,从而简化了开发。JavaServer Faces 还引起了广大Java/Web开发人员的兴趣(本人没兴趣)。J2EE开发人员和 Web 设计人员将发现JSF开发可以简单到只需将用户界面 (UI) 组件拖放到页面上(没发现),而J2EE开发人员将发现丰富而强健的JSF API为他们提供了无与伦比的功能和编程灵活性(是吗)。JSF 还通过将良好构建的MVC设计模式集成到它的体系结构中,确保了应用程序具有更高的可维护性。最后,由于 JSF 是通过Java Community Process (JCP)开发的一种 Java 标准,因此开发工具供应商完全能够为JavaServer Faces提供易于使用的、高效的可视化开发环境。
使用JavaServer Faces Technology创建一个JSP页面时,在服务器的内存中会建立一个组件树,每一个组件标签对应树中的一个UIComponent实例。该框架使用组件树来处理应用程序的请求并且创建一个呈现出的响应。当用户生成一个事件时,例如,点击了一个按钮JavaServer Faces生命周期即处理该事件并且产生适当的响应。
FacesServlet是进入JavaServer Faces框架的入口点。它处理请求处理生命周期并且用作一个前端控制器。JavaServer Faces Technology也有保存重要请求信息的上下文的概念。上下文对象被称为FacesContext。在JavaServer Faces Technology生命周期的每个阶段上下文对象都被修改并且每次请求时都是有效的。
JSF提供了以下东东:
标准的编程接口
丰富可扩展的组件库
一个核心的JSP标记库用来处理事件、执行验证以及其他非UI相关的操作(core)
一个标准的HTML标记库来表示UI组件(html)
事件驱动模型
JSF通过IDE工具支持拖放式开发。
JSF目标
简化开发
超越现有Web框架
试图在不同的角度上提供网页设计人员、应用程序设计人员、组件开发人员解决方案,让不同技术的人员可以彼此合作又不互相干扰
JSF的主要优势之一就是它既是 Java Web 用户界面标准又是严格遵循模型-视图-控制器 (MVC) 设计模式的框架。用户界面代码(视图)与应用程序数据和逻辑(模型)的清晰分离使 JSF 应用程序更易于管理。为了准备提供页面对应用程序数据访问的 JSF 上下文和防止对页面未授权或不正确的访问,所有与应用程序的用户交互均由一个前端“Faces”servlet(控制器)来处理。
JSF开发所需要的包
jsf-api.jar 包含有 Faces servlet 与其它相关 javax.faces 包下面的类
jsf-impl.jar JSF 的参考实现
jstl.jar 包含JavaServer Faces Standard Tag Library classes(JSTL)。
standard.jar使用JSTL时需要用到它
Web.xml 配置JSF 应用的引擎
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class> javax.faces.webapp.FacesServlet </servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.faces</url-pattern>
使用JSF时,所有的请求都透过FacesServlet来处理
JSP引入标签库
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
JSF的core与html标签库,core是有关于UI组件的处理,而html则是有关于HTML的进阶标签
抄完,不是,是转完收工。
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
**JSF2入门视频+源代码教程** ...通过这个JSF2入门教程,你将能够从零开始,逐步掌握JSF2的核心概念和技术,为今后的Web开发打下坚实的基础。配合视频讲解和实际操作,相信你能够迅速上手并享受JSF2带来的开发便利。
UIHeadlineViewer利用标准的表格呈现器(TableRenderer)来展现RSS数据,这意味着开发者无需从零开始构建复杂的呈现逻辑,而是可以依赖于JSF框架已有的表格组件。此外,章节中还提到了一个定制的标签处理器——...
### J2EE从零开始——全面解析与学习指南 #### 一、Java三大分支简介 随着Java技术的发展,根据不同的应用场景,Java被划分为三个主要领域:J2SE(Java 2 Standard Edition)、J2ME(Java 2 Micro Edition)以及...
《Java Web开发实践教程——从设计到实现》是一本深入探讨Java Web开发的综合性教材,旨在帮助读者从零基础开始,逐步掌握构建Web应用程序的全过程。这个资料包包含的文件"17624Java Web开发实践教程"可能是书籍的...
通过整合Servlet、JSP、自定义标签和信息资源等技术,Struts提供了一个统一的框架,让开发者无需从零开始实现MVC模式。这一特性不仅减少了Web应用的开发时间,还提高了产品的可重用性和标准化程度。 #### 3.1 ...
- **单元测试入门**:从零开始讲解如何使用JUnit进行单元测试。 - **逐步实践**:提供逐步指南,演示如何将JUnit应用于Struts项目中。 #### 使用StrutsTestCase测试Action - **Mock模式**:解释如何在Mock模式下...
Java局域网通信——飞鸽传书源代码 28个目标文件 内容索引:JAVA源码,媒体网络,飞鸽传书 Java局域网通信——飞鸽传书源代码,大家都知道VB版、VC版还有Delphi版的飞鸽传书软件,但是Java版的确实不多,因此这个Java...