受管Bean与EL表达式

1)编写Bean:①有一个不带形参的构造方法 ②getXxx、setXxx ③一般要实现io.Serializable接口

2)声明受管Bean:①bean名称为外界访问其属性和调用方法的渠道,在一个jsf应用中,每个bean的名称都是唯一的

         ②bean类名:由报名限制的完整类名

         ③作用域:用来指定bean的生命周期,包括应用(application)、会话(session)、视图(view)、请求(request)、无(none),它们在配置文件中需要声明。

用java标注声明,例如:

package beans;

@ManagedBean(name="me")

@RequestScoped //或@ApplicationScoped/@SessionScoped/@ViewScoped/@NoneScoped视情况而定

public class UserBean{}

配置文件声明:

<managed-bean>

<managed-bean-name>me</managed-bean-name>

<managed-bean-class>beans.UserBean</managed-bean-class>

<managed-bean-scope>request</managed-bean-scope>

备注:无(none)会在 使用时随时创建

3)生命周期方法:指定在bean创建之后和销毁之前自动调用的方法:分别用@PostConstruct和@PreDestroy声明

4)初始化受管Bean(在<managed-bean>中设置)

①简单的属性设置

<managed-porperty>

<property-name>name</property-name>

<value>louby</value>

</managed-property>

<!--以上就是一个属性的设置-->

<property-name>pw</property-name>

<null-value/>

</managed-property>

②初始化List型属性(单词entry为登记的意思)

<managed-property><property-name>names</property-name>

<list-entries>

<value-class>java.lang.String</value-class><!--value中使用的字符类-->

<value>liu</value>

<value>zhao</value>

<value>wang</value>

</list-entries>

</managed-property>

③初始化Map型属性(在<managed-property>中)省略属性名如下:

<map-entries>

<key-class>java.lang.String</key-class>

<value-class>java.lang.Integer</value-class>

<map-entry>

<key>101</key>

<value>1</value>

</map-entries>

...其他属性设置

</map-entries>

5)List和Map型的受管bean配置:

<managed-bean>

<managed-bean-name>names</managed-bean-name>

<managed-bean-class>java.util.ArrayList</managed-bean-class>

<managed-bean-scope>application</managed-bean-scope>

<list-entries>

<value>liu</value>

<value>zhao</value>

<value>wang</value>

</list-entries>

</managed-bean>

6)值表达式

①一般出现在页面中,用于访问bean的属性

<h:inputText value="#{user.name}"/>

user.name=user["name"]=user['name']

②复合表达式:若干值表达式

<h:outputText value-"姓名:#{user.name},年龄:#{user.age}"/>

③方法表达式:指定一个对象及其一个方法

<h:commandButton action="#{user.checkPassword}"/>

以下4个组件可以设置一个表达式:

action、validator、actionListener、valueChangeListener

JSF-受管Bean与EL表达式的更多相关文章

  1. Spring 在 xml配置文件 或 annotation 注解中 运用Spring EL表达式

    Spring  EL 一:在Spring xml 配置文件中运用   Spring EL Spring EL 采用 #{Sp Expression  Language} 即 #{spring表达式} ...

  2. JSF页面中的JS取得受管bean的数据(受管bean发送数据到页面)

    JSF中引入jsf.js文件之后,可以拦截jsf.ajax.request请求.一直希望有一种方法可以像jquery的ajax一样,能在js中异步取得服务器端发送的数据.无奈标准JSF并没有提供这样的 ...

  3. JAVAWEB开发之Session的追踪创建和销毁、JSP具体解释(指令,标签,内置对象,动作即转发和包括)、JavaBean及内省技术以及EL表达式获取内容的使用

    Session的追踪技术 已知Session是利用cookie机制的server端技术.当client第一次訪问资源时 假设调用request.getSession() 就会在server端创建一个由 ...

  4. java web学习总结(三十一) -------------------EL表达式

    一.EL表达式简介 EL 全名为Expression Language.EL主要作用: 1.获取数据 EL表达式主要用于替换JSP页面中的脚本表达式,以从各种类型的web域 中检索java对象.获取数 ...

  5. Spring2.0-applicationContext.xml中使用el表达式给实体类属性赋值被当成字符串-遁地龙卷风

    (-1)写在前面 这两天读<javaweb开发王者归来>,学到Spring的PropertyPlaceholderConfigurer时出现一个问题,我已${jdbc.name}的形式赋值 ...

  6. Javaweb学习笔记——EL表达式

    一.前言 EL表达式是什么? 简而言之,可以这样理解,EL表达式全名为:Exprexxsion Language,原先是JSTL 1.0为了方便存取数据而定义的语言,到了JSTL 2.0便正式成为标准 ...

  7. JSP EL表达式

    1 EL表达式简介 EL 全名为Expression Language.EL主要作用: 1.获取数据 EL表达式主要用于替换JSP页面中的脚本表达式,以从各种类型的web域 中检索java对象.获取数 ...

  8. EL表达式和JSTL

    EL相关概念JSTL一般要配合EL表达式一起使用,来实现在jsp中不出现java代码段.所以我们先来学习EL表达式 EL主要用于查找作用域中的数据,然后对它们执行简单操作:它不是编程语言,甚至不是脚本 ...

  9. EL表达式中fn函数 (转载)

    JSTL 使用表达式来简化页面的代码,这对一些标准的方法,例如bean的getter/setter方法,请求参数或者context以及 session中的数据的访问非常方便,但是我们在实际应用中经常需 ...

随机推荐

  1. Cocos2D旋转炮塔到指定角度(一)

    原文地址:Rotating Turrets: How To Make A Simple iPhone Game with Cocos2D 2.X Part 2 翻译有节选和删除. 在你旋转炮塔之前,首 ...

  2. C++ Primer 有感(管理类的指针成员)

    C++类的指针成员与其他成员有所不同,指针成员指向一个内存地址,该地址的内存需要我没管理. 我现在分析一下为什么要管理指针成员. 有如下Student类,Student.h如下: [cpp] view ...

  3. 【一天一道LeetCode】#72. Edit Distance

    一天一道LeetCode 本系列文章已全部上传至我的github,地址:ZeeCoder's Github 欢迎大家关注我的新浪微博,我的新浪微博 欢迎转载,转载请注明出处 (一)题目 Given t ...

  4. 9.2.1、Libgdx的输入处理之轮询

    (官网:www.libgdx.cn) 轮询是检测输入设备的当前状态,比如特定的按键按下,屏幕第一个手指的位置等等.这是一个快速简单的处理用户输入的方式,并且应用到很多的游戏中. 注意:如果你处理轮询, ...

  5. 【Android 应用开发】Android 网络编程 API笔记 - java.net 包相关 接口 api

    Android 网络编程相关的包 : 9 包, 20 接口, 103 类, 6 枚举, 14异常; -- Java包 : java.net 包 (6接口, 34类, 2枚举, 12异常); -- An ...

  6. (NO.00001)iOS游戏SpeedBoy Lite成形记(二)

    打开SpriteBuilder生成的Xcode项目文件,首先在MainScene添加play回调函数: -(void)play{ CCScene *gameScene = [CCBReader loa ...

  7. Gradient Descent 梯度下降法-R实现

    梯度下降法: [转载时请注明来源]:http://www.cnblogs.com/runner-ljt/ Ljt 作为一个初学者,水平有限,欢迎交流指正. 应用:求线性回归方程的系数 目标:最小化损失 ...

  8. android驱动例子(LED灯控制)

    本例子,讲述在android2.1上完全自已开发一个驱动去控制硬件口并写应用测试该驱动,通过这样一个例子,解析android下的驱动开发流程的应用调用流程,可以说是很好的入门引导 要达到的效果:通过a ...

  9. Git错误一例

    Bitbucket一直不稳定,push, pull经常失效.幸好还有goagent可以用. 把git的全局配置改为走goagent代理,可以正常使用: [http] proxy = http://12 ...

  10. Ibatis动态(dynamic)查询

     Ibatis的动态查询使得数据操作变得非常的灵活,下次举出了常用的动态查询的属性信息: Ibatis配置信息 <!-- Dynamic Sql --> <typeAlias a ...