`
chenhua_1984
  • 浏览: 1246360 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

一个JSF的入门例子

阅读更多
public class UserBean {
    private String name;

    public void setName(String name) {
        this.name = name;
    }
    public String getName() {
        return name;
    }
}

 

这个Bean将储存使用者的名称,编译好之后放置在/WEB-INF/classes下。

  接下来设计页面流程,我们将先显示一个登入网页/pages/index.jsp,使用者填入名称并送出表单,之后在/pages/welcome.jsp中显示Bean中的使用者名称与欢迎讯息。

  为了让JSF知道我们所设计的Bean以及页面流程,我们定义一个/WEB-INF/faces-config.xml:

faces-config.xml

<?xml version="1.0"?>
 <!DOCTYPE faces-config PUBLIC
 "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
 "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">

 <faces-config>
    <navigation-rule>
        <from-view-id>/pages/index.jsp</from-view-id>
        <navigation-case>
            <from-outcome>login</from-outcome>
            <to-view-id>/pages/welcome.jsp</to-view-id>
        </navigation-case>
    </navigation-rule>

    <managed-bean>
        <managed-bean-name>user</managed-bean-name>
         <managed-bean-class>
             onlyfun.caterpillar.UserBean
         </managed-bean-class>
        <managed-bean-scope>session</managed-bean-scope>
    </managed-bean>
 </faces-config>
 

在<navigation- rule>中,我们定义了页面流程,当请求来自<from-view- id>中指定的页面,并且指定了<navigation-case>中的<from-outcome>为login时,则 会将请求导向至<to-view-id>所指定的页面。

  在<managed-bean>中我们可以统一管理我们的Bean,我们设定Bean物件的存活范围是session,也就是使用者开启浏览器与程式互动过程中都存活。

  接下来要告诉网页设计人员的资讯是,他们可以使用的Bean名称,即<managed-bean-name>中设定的名称,以及上面所定义的页面流程。

首先网页设计人员撰写index.jsp网页:

index.jsp

 

我们使用了JSF的core与html标籤库,core是有关于UI元件的处理,而html则是有关于HTML的进阶标籤。

  <f:view>与<html>有类似的 作用,当您要开始使用JSF元件时,这些元件一定要在<f: view>与</f:view>之间,就如同使用HTML时,所有的标籤一定要在<html>与< /html>之间。

  html标籤库中几乎都是与HTML标籤相关的进阶标 籤,<h:form>会产生一个表单,我们使用<h: inputText>来显示user这个Bean物件的name属性,而<h:commandButton>会产生一个提交按钮,我们 在action属性中指定将根据之前定义的login页面流程中前往welcome.jsp页面。

  网页设计人员不必理会表单传送之后要作些什麽,他只要设计好欢迎页面就好了:

welcome.jsp

<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
<%@page contentType="text/html;charset=Big5"%>
<html>
<head>
<title>第一个JSF程式</title>
</head>
<body>
    <f:view>
        <h:outputText value="#{user.name}"/> 您好!
        <h3>欢迎使用 JavaServer Faces!</h3>
    </f:view>
</body>
</html>

 

这个页面没什麽需要解释的了,如您所看到的,在网页上没有程式逻辑,网页设计人员所作的就是遵照页面流程,使用相关名称取出资料,而不用担心实际上程式是如何运作的。

  接下来启动Container,连接上您的应用程式网址,例如:http://localhost:8080/jsfDemo/pages/index.faces ,填入名称并送出表单,您的欢迎页面就会显示了。

<%@taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
<%@taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
<%@page contentType="text/html;charset=Big5"%>
<html>
<head>
<title>第一个JSF程式</title>
</head>
<body>
    <f:view>
        <h:form>
            <h3>请输入您的名称</h3>
            名称: <h:inputText value="#{user.name}"/><p>
            <h:commandButton value="送出" action="login"/>
        </h:form>
    </f:view>
</body>
</html>

  web.xml

   1. <?xml version="1.0" encoding="ISO-8859-1"?>  
   2.  <web-app xmlns="http://java.sun.com/xml/ns/j2ee"  
   3.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
   4.     xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee  
   5.     http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"  
   6.     version="2.4">  
   7.   
   8.     <description>  
   9.         JSF Demo  
  10.     </description>  
  11.     <display-name>JSF Demo</display-name>  
  12.     <servlet>  
  13.         <servlet-name>Faces Servlet</servlet-name>  
  14.         <servlet-class>  
  15.             javax.faces.webapp.FacesServlet  
  16.         </servlet-class>  
  17.         <load-on-startup>1</load-on-startup>  
  18.     </servlet>  
  19.   
  20.     <servlet-mapping>  
  21.         <servlet-name>Faces Servlet</servlet-name>  
  22.         <url-pattern>*.faces</url-pattern>  
  23.     </servlet-mapping>  
  24.   
  25.     <welcome-file-list>  
  26.         <welcome-file>welcome.html</welcome-file>  
  27.     </welcome-file-list>  
  28.  </web-app>  
 

 

分享到:
评论

相关推荐

    JSF入门实例 源代码

    这个"JSF入门实例 源代码"是专门为初学者设计的,帮助他们快速理解并掌握JSF的基本概念和用法。下面我们将深入探讨JSF的核心特性、工作原理以及如何通过给定的实例进行学习。 1. JSF概述: JSF是一种官方支持的...

    jsf入门实例教程

    在"JSFDemo"项目中,你可以找到一个完整的JSF应用实例,包括JSF页面、Managed Bean和其他配置文件。通过分析和运行这个项目,你可以更直观地理解JSF的工作原理和应用方式。 总之,JSF提供了一种强大且灵活的方式来...

    JSF 入门实例 代码

    **资源和学习材料** 对于初学者来说,"JSF入门实例代码" 提供了一个很好的起点。这个资源可能包含了一些基础的JSF页面示例,如登录、注册、数据显示等常见功能的实现。通过分析和运行这些示例,你可以了解JSF组件...

    jsf入门实例

    本篇将深入解析一个JSF入门实例,帮助初学者理解JSF的基本概念、配置方法及应用实践。 #### 核心知识点概览: 1. **JSF框架简介与特性** 2. **搭建开发环境:Eclipse与MyEclipse插件** 3. **创建JSF项目** 4. **...

    jsf 入门 helloWorld

    本教程将带你入门 JSF,通过创建一个简单的 "Hello, World!" 示例来理解其基本概念。 ### 1. 安装与配置 首先,确保你的开发环境已经安装了以下软件: - Java Development Kit (JDK):JSF 基于 Java,所以你需要...

    JSF简单入门例子

    在这个“JSF简单入门例子”中,我们将深入探讨JSF的基本概念、关键组件以及如何创建一个简单的JSF应用程序。 **1. JSF基本概念** - **组件模型**:JSF的核心是组件模型,它定义了UI组件及其交互方式。组件可以是...

    JsfDemo入门例子

    在"JsfDemo入门例子"中,我们将会探讨如何使用JSF进行基本的Web应用开发。 首先,让我们了解**MyEclipse**。MyEclipse是基于Eclipse的一款强大的Java集成开发环境,特别针对Java EE应用开发进行了优化。它集成了...

    JSF入门实例-用户登录

    在这个"JSF入门实例-用户登录"中,我们将深入理解如何使用JSF来实现一个基本的用户登录功能。 1. **创建JSF工程** 在Eclipse这样的集成开发环境中,可以创建一个新的Dynamic Web Project,然后通过添加库或者使用...

    值得看的jsf入门教程

    - JSF是一个MVC(Model-View-Controller)架构的框架,用于构建动态、数据驱动的Web应用。 - 它提供了一种声明式的方式处理用户输入,减轻了开发者的工作负担。 - JSF通过UI组件、事件处理和数据绑定等特性,提高...

    jsf入门列子和jsf与Tiles结合

    在上述的JSF入门例子中,我们首先看到的是`UserBean.java`,这是个简单的实体类,模拟了用户登录的情景。它包含了用户名`name`、密码`password`以及错误消息`errMessage`等属性,并提供了相应的getter和setter方法。...

    JSF入门(一)

    JavaServer Faces (JSF) 是一个用于构建Web应用程序的Java EE框架,它提供了一种组件化、事件驱动的方式来开发用户界面。JSF的核心概念包括UI组件、事件处理、数据绑定以及生命周期管理。在本系列的第一部分,我们将...

    JSF入门(中文pdf)

    本资源提供了一份详细的JSF入门中文PDF教程,旨在帮助初学者快速理解并掌握JSF的核心概念和基本用法。 JSF的核心理念在于简化Java Web开发,通过组件化的方式将界面、业务逻辑和数据模型进行解耦。在JSF中,UI组件...

    jsf入门(pdf格式)

    标签是用于在页面上声明UI组件的,例如`&lt;h:inputText&gt;`用于创建一个文本输入字段,`&lt;h:commandButton&gt;`则用于创建一个提交按钮。JSF还支持EL(Expression Language),这允许开发者在页面上动态地访问和操作后台bean...

    JSF入门代码

    在"JSF入门代码"这个实例中,我们可以看到一个简单的JSF应用的创建过程。开发者通常会使用JSF提供的UI组件,如按钮、文本框等,将它们与后端的JavaBeans(也称为Managed Beans)进行绑定,从而实现数据的显示和交互...

    《JSF入门》培训教程PPT

    JavaScript Server Faces(JSF)是Java平台上的一种用于构建Web应用程序的MVC(Model-View-Controller)框架。...在学习过程中,结合《JSF标签》和《JSF入门》的培训教程,能够更好地掌握JSF的精髓。

    JSF入门教材简体中文版(html版 pdf版)

    **JSF(JavaServer Faces)** 是一个Java平台上的用户界面框架,主要用于构建Web应用程序。它简化了前端和后端的交互,为开发者提供了一种声明式的方式来创建用户界面,使得开发更加高效且易于维护。JSF的核心概念是...

    JSF基础教程 简体中文

    JSF入门如果您是从使用的角度来看JSF,...在不考虑组件有子组件的情况下,这边以实际的一个例子来说明开发组件的过程,至于考虑子组件的情况请参考专书介绍。 o 编码, 译码 o 组件卷标 o 使用自订组件 o 自订 Renderer

    JSF入门实例

    ### JSF入门实例详解 #### 一、JSF简介 JavaServer Faces(简称JSF)是一种基于Java EE标准的用户界面构建技术,主要用于简化企业级Web应用的开发过程。JSF提供了一种声明式的方式来创建丰富的用户界面,并通过...

Global site tag (gtag.js) - Google Analytics