知识大全 JavaBean与MBean详解

Posted 函数

篇首语:幽沉谢世事,俯默窥唐虞。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 JavaBean与MBean详解相关的知识,希望对你有一定的参考价值。

JavaBean与MBean详解  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  

  首先从Model 中的JavaBean说起 大家知道 Model 的基本架构就是JSP页面通过JavaBean访问数据层 那么JavaBean到底是什么东东呢?

  其实JavaBean只是一个特别的Java类而已 在JavaBean中 对私有的域用getXXX和setXXX来实现存取 并且必须有一个无参数的构造函数 如下类就是一个JavaBean文件

  package net moon beans;       public class UserInfo       private String userName;       private String password;       public String getUserName()      return userName;             public String getPassword()      return password;             public void setUserName(String userName)      this userName = userName;             public void setPassword(String password)      this password = password;             //如果一个类中无构造函数 Java会为它加一个默认的空的无参数的构造函数       //因此 如无其它构造函数 可省略该构造函数      public UserInfo()               

  需注意其中的格式要求 域名为第一个单词首字母小写的(usernName) 对应一个域 分别有一个getUserName和setUserName两个方法 来读取和设置这一域 方法名为get/set + 域名(首字母大写)

  做过Model 开发的人会知道 JavaBean的引入方式可以是使用标签<jsp:useBean>来引入的 不需开发人员实例化即可产生一个该类的实例 因为实例是由Web容器产生的 所以我们必须提供无参数的构造函数由Web容器来调用

  再来解释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>   

  对其中的managed bean name managed bean class和managed bean scope做一下解释 managed bean name是这一MBean的名字 用于其它位置的调用

  managed bean class是这一MBean的完整路径 用于指明该MBean的类文件位置

  managed bean scope是这一MBean的有效范围

  下面再对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的一个属性

cha138/Article/program/Java/hx/201311/25866

相关参考

知识大全 JavaBean简易入门

Java初学者讲堂:JavaBean简易入门  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  软件

知识大全 JavaBean入门知识

JavaBean入门知识  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  一般要求  首先您必须有

知识大全 企业版JavaBean讨论

企业版JavaBean讨论  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  安装EJB运行和开发环

知识大全 一个实现排列和组合的JavaBean

一个实现排列和组合的JavaBean  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  在我们编程时

知识大全 JSP结合JavaBean生成静态页面示例

JSP结合JavaBean生成静态页面示例  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!lishi

知识大全 JavaBean实现JSP页面和代码分离

JavaBean实现JSP页面和代码分离  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!    在J

知识大全 JSP调用JavaBean在网页动态生成柱状图

JSP调用JavaBean在网页动态生成柱状图  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  我

知识大全 Tomcat下JSP、Servlet和JavaBean环境配置

Tomcat下JSP、Servlet和JavaBean环境配置  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来

知识大全 JavaBean 在jsp和serlvle中传递技术要点

JavaBean在jsp和serlvle中传递技术要点  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧

知识大全 根据JavaBean生成数据库增删改查的SQL语句

根据JavaBean生成数据库增删改查的SQL语句  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!