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 分页 jsf 分页 jsf 分页 jsf 分页
《JSF_实战》非常好的JSF学习书《JSF_实战》非常好的JSF学习书《JSF_实战》非常好的JSF学习书《JSF_实战》非常好的JSF学习书《JSF_实战》非常好的JSF学习书《JSF_实战》非常好的JSF学习书《JSF_实战》非常好的JSF...
JSF中文教程JSF中文教程JSF中文教程JSF中文教程
主要讲述JSF的工作方式 JSF的工作方式 JSF架构 JSF模型 JSF事件类型
================================= JSF开发必备JAR ================================= <br>《JSF入门简单中文版》开篇提到JSF开发需要的jar,' 但是按其中提供的方法: <br>jstl.jar 与 ...
第一个JSF程序,初学JSF者必备,jsf架包 jsf实例
JSF开发介绍JSF开发介绍JSF开发介绍JSF开发介绍JSF开发介绍JSF开发介绍JSF开发介绍JSF开发介绍JSF开发介绍
jsf1.2 core jsf jsf核心
jsf 视频 java faces jsf 视频 java faces jsf 视频 java faces
JSF的学习入门知识教程,里面有例子还有各个标签的使用及属性介绍
jsf 中文文档jsf 中文文档jsf 中文文档jsf 中文文档
JSF入门教程 JSF入门教程 JSF入门教程
自己写的JSF文件上传项目,可以最大支持最大1.99G文件 需要的jar包需奥自己加 附:jar目录截图
这里是jsf的tags的书籍。主要讲述jsf的用法。
JSF入门详细资料(PDF),包括JSF入门中文版,JSF Web应用实战开发,以及JSF2,JSF入门必配学习资料
精通JSF中文教程精通JSF中文教程精通JSF中文教程精通JSF中文教程精通JSF中文教程精通JSF中文教程
jsf 文档 jsf 文档 jsf 文档 jsf 文档
下了才知道他的好.jsf就是好呀,jsf就是好呀!!