JSF中的MBean,其实MBean就是一个JavaBean,因此它有着和JavaBean相同的要求。 最后是MBean的配置,JSF的MBean需要在faces-config文件中做配置,配置方法如下:
<managed-bean>
<description>demo of config</description>
<display-name>userInfo</display-name>
<managed-bean-name>user</managed-bean-name>
<managed-bean-class>net.moon.beans.UserInfo</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope> </managed-bean>
下面再对manage-bean-scope进行一下详细的解释,其有效取值为:application, session, request, none。很容易理解,它们的存活周期分别如下:
Name Scope
Application 整个应用
Session 整个对话
Request 整个请求
None 需要时,临时
大家知道,JSF是以JSP为基础的,那么,对于JSP的九大对象来说,这四种scope的信息到底是怎么存储的呢?经过测试证明,scope为applicatoin的MBean的实例保存在ServletContext中,也就是JSP中的application中,因此我们可以用如下的方法得到某个类的引用:
FacesContext fc = FacesContext.getCurrentInstance();
UserInfo ui = (serInfo)fc.getExternalContext().getApplicationMap().get("user");
对session级别的MBean,我们可以用如下方法得到其引用:
FacesContext fc = FacesContext.getCurrentInstance();
UserInfo ub = (UserInfo)fc.getExternalContext().getSessionMap().get("userInfo");
当然,我们也可以用其它的方法得到session对象后,从session中取出实例。 对request级别的MBean,我们可从request对象中取得,代码如下:
FacesContext fc = FacesContext.getCurrentInstance();
HttpServletRequest request = (HttpServletRequest)fc.getExternalContext().getRequest();
UserInfo ui = (UserInfo)request.getAttribute("user");
至于none类型的MBean,应该只能得到新的实例了。
当然,JSF提供了另外的访问MBean的方法,我们可以用如下的代码得到MBean的实例:
FacesContext context = FacesContext.getCurrentInstance();
ValueBinding binding = context.getApplication().createValueBinding("#{user}");
UserBean user = (UserBean) binding.getValue(context);
也可用如下的代碼直接得到MBean的一個屬性:
FacesContext context = FacesContext.getCurrentInstance();
ValueBinding binding = context.getApplication().createValueBinding("#{user.name}");
String name = (String) binding.getValue(context);
分享到:
相关推荐
jsf实例 JSF学习 JSF jar包 JSF jsf实例 JSF学习 JSF jar包 JSFjsf实例 JSF学习 JSF jar包 JSF jsf实例 JSF学习 JSF jar包 JSF
JSF是一种用于构建Java Web 应用程序的标准框架(是Java Community Process 规定的JSR-127标准)。JSF(Java Server Faces)技术为开发基于网络用户界面的Java开发者提供了标准的编程接口API以及标签库。就像Struts框架...
**JSF(JavaServer Faces)** 是一个Java平台上的用户界面框架,用于构建Web应用程序。它为开发人员提供了一种模型-视图-控制器(MVC)架构,简化了前端和后端之间的交互。JSF提供了组件库,使得创建动态、交互式的...
JSF(JavaServer Faces)是Java平台上用于构建用户界面的Web框架,尤其在处理表单和数据交互方面表现强大。本项目聚焦于JSF的文件上传功能,特别是针对大文件的上传,允许用户上传最大可达1.99GB的文件。在实际应用...
《JSF_实战》非常好的JSF学习书《JSF_实战》非常好的JSF学习书《JSF_实战》非常好的JSF学习书《JSF_实战》非常好的JSF学习书《JSF_实战》非常好的JSF学习书《JSF_实战》非常好的JSF学习书《JSF_实战》非常好的JSF...
**JSF(JavaServer Faces)** 是一个Java平台上的用户界面框架,用于构建Web应用程序。它简化了开发人员创建交互式、数据驱动的Web界面的过程。JSF提供了一个组件模型,允许开发者通过拖放组件的方式来构建用户界面...
JavaServer Faces(JSF)是Java平台上的一种用于构建Web应用程序的MVC(Model-View-Controller)框架。它提供了一种声明式的方式来构建用户界面,简化了开发过程,并且与Java EE平台无缝集成。本系列资料包括《JSF...
JavaServer Faces (JSF) 是一个用于构建用户界面的Java Web框架,它简化了创建和维护Web应用程序的复杂性。JSF的核心理念是提供一种组件化的编程模型,将UI元素与业务逻辑分离,使得开发者可以专注于应用的逻辑部分...
**JSF(JavaServer Faces)** 是一种Java平台上的Web应用程序开发框架,它提供了一种组件化和事件驱动的方式来创建用户界面。JSF的核心概念包括组件、事件、渲染器和生命周期,这些元素共同构建了一个强大的MVC...
在JavaServer Faces (JSF)框架中,分页是一种常用的技术,用于处理大量数据时提供更好的用户体验。当数据集过大,一次性加载所有记录到页面上会导致性能下降且用户界面响应变慢。通过分页,我们可以将数据分成多个...
JavaScript Faces (JSF) 是Java平台上的一种用于构建用户界面的模型-视图-控制器(MVC)框架,它简化了Web应用程序的开发。本资源包包含了JSF从入门到进阶的多个方面,包括基础教程、核心组件库(LIB)、Ajax4JSF的使用...
**JSF 1.2核心详解** JavaServer Faces (JSF) 是Java平台上的一个用于构建用户界面的组件模型框架,特别适用于Web应用程序的开发。JSF 1.2是该框架的一个重要版本,它在JSF 1.1的基础上进行了一系列的改进和增强,...
**JSF 文件下载实现** 在JavaServer Faces (JSF)框架中,实现文件下载功能是一项常见的需求。在本文中,我们将深入探讨如何使用JSF来实现在Web应用程序中下载文件的功能。主要涉及的关键知识点包括: 1. **JSF上...
JavaServer Faces(JSF)是Java平台上的一种用于构建Web应用程序的MVC(Model-View-Controller)框架。它提供了一种组件化的方式来构建用户界面,简化了前后端交互的复杂性。在JSF中,开发者可以使用声明式编程模型...
================================= JSF开发必备JAR ================================= <br>《JSF入门简单中文版》开篇提到JSF开发需要的jar,' 但是按其中提供的方法: <br>jstl.jar 与 ...
JavaScript Faces (JSF) 是Java平台上用于构建企业级Web应用程序的一种服务器端的用户界面框架。JSF 是Java Community Process (JCP) 规范的一部分,最初由Sun Microsystems开发,现在由Oracle公司维护。JSF的核心...
JSF的核心组件包括Facelets、 Managed Beans、View Scope、Converter和Validator等。 二、JSF架构 1. **Facelets**:JSF 2.0开始引入Facelets作为默认视图层技术,它是一种XML-based模板语言,用于创建用户界面。 2...
**JSF(JavaServer Faces)** 是Java平台上的一种用于构建用户界面的Web应用程序框架,它简化了开发人员创建和管理动态Web用户界面的过程。JSF提供了组件库、事件处理机制和生命周期管理,允许开发者通过声明式的...
JSF(JavaServer Faces)是Java平台上的一种用于构建用户界面的MVC(Model-View-Controller)框架。它提供了一种声明式的方式来创建Web应用程序,允许开发者通过组件和事件处理来构建用户界面,而无需深入HTML和...
JavaServer Faces (JSF) 是一个用于构建用户界面的Java框架,主要应用于Web应用程序开发。JSF基于模型-视图-控制器(MVC)架构,提供了丰富的组件库和生命周期管理,使得开发者能够更加便捷地创建动态、数据驱动的...