ValueExpression

ValueExpression 2008-11-20 00:24:00
标签: ValueExpression
public abstract class javax.el
ValueExpression
 

Show All Login
Java EE 5 SDK
  
 
Extends: Expression
Hide
zh_cn
可以获取或设置值的 Expression
此 API 以前的代号,只能读取表达式。 ValueExpression 对象现在可以用于获取值和设置值。可以设置值的表达式称为 l-value 表达式。不能设置值的表达式称为 r-value 表达式。并非所有 r-value 表达式都可以用作 l-value 表达式(例如, "${1+1}""${firstName} ${lastName}")。有关详细信息,请参阅 EL 规范。对不能用作 l-value 的表达式调用 isReadOnly() 必须总是返回 true
可以使用 ExpressionFactory#createValueExpression 方法解析表达式字符串,并返回封装已解析表达式的 ValueExpression 的具体实例。解析时(而不是计算时)使用 FunctionMapper,所以在计算表达式时不需要它。但是,计算时需要 ELContext
每次调用 #getValue#setValue#isReadOnly #getType 方法时将对表达式求值。使用 ELContext 中的 ELResolver 解析顶级变量,并确定 .[] 操作符的行为。对于这 4 个方法中的任何一个,使用 ELResolver#getValue 方法解析除最后一个属性以外的所有属性。这提供 base 对象。最后解析时, ValueExpression 将调用相应的 ELResolver#getValueELResolver#setValueELResolver#isReadOnlyELResolver#getType 方法,具体情况取决于在 ValueExpression 上调用哪个方法。
请参阅 Expression javadoc 中有关比较、序列化和不可变性的注释。
sinceJSP 2.1
See alsojavax.el.ELResolver, javax.el.Expression, javax.el.ExpressionFactory

Constructors
publicValueExpression()

Properties
abstract public Class<T>getExpectedType() Hide
zh_cn
返回求值之后将表达式结果强制匹配的类型。
return
zh_cn
传递给创建了此 ValueExpressionExpressionFactory.createValueExpression 方法的 expectedType
abstract public booleanisReadOnly(ELContext context) Hide
zh_cn
相对于提供的上下文对表达式求值,如果调用 #setValue 总是失败,则返回 true
context
zh_cn
此计算的上下文。
return
zh_cn
如果表达式是只读的,则返回 true;否则返回 false
ThrowsNullPointerException:
zh_cn
如果 context 为 null
ThrowsPropertyNotFoundException:
zh_cn
如果由于指定变量或属性不存在或不可读导致某个属性解析操作失败。
ThrowsELException:
zh_cn
如果执行属性或变量解析时抛出异常。抛出的异常必须作为此异常的 cause 属性包含(如果可用)。 * @throws NullPointerException 如果 context 为 null
abstract public Class<T>getType(ELContext context) Hide
zh_cn
相对于提供的上下文对表达式求值,并返回最一般的类型,该类型对于将来调用 #setValue 方法时作为 value 参数传递的对象而言是可接受的。
这并非总是与 getValue().getClass() 相同。例如,如果是引用数组元素的表达式,则 getType 方法将返回数组元素的类型,这可能是当前位于指定的数组元素中实际元素类型的超类。
context
zh_cn
此计算的上下文。
return
zh_cn
最一般可接受的类型;其他情况未定义。
ThrowsNullPointerException:
zh_cn
如果 context 为 null
ThrowsPropertyNotFoundException:
zh_cn
如果由于指定变量或属性不存在或不可读导致某个属性解析操作失败。
ThrowsELException:
zh_cn
如果执行属性或变量解析时抛出异常。抛出的异常必须作为此异常的 cause 属性包含(如果可用)。
abstract public voidsetValue(ELContext context, Object value) Hide
zh_cn
相对于提供的上下文对表达式求值,并将结果设置为提供的值。
context
zh_cn
此计算的上下文。
value
zh_cn
要设置的新值。
ThrowsNullPointerException:
zh_cn
如果 context 为 null
ThrowsPropertyNotFoundException:
zh_cn
如果由于指定变量或属性不存在或不可读导致某个属性解析操作失败。
ThrowsPropertyNotWritableException:
zh_cn
如果由于指定的变量或属性不可写导致最终变量或属性解析失败。
ThrowsELException:
zh_cn
如果尝试设置属性或变量时抛出异常。抛出的异常必须作为此异常的 cause 属性包含(如果可用)。
abstract public ObjectgetValue(ELContext context) Hide
zh_cn
相对于提供的上下文对表达式求值,并返回所得值。
所得值会自动强制匹配为创建此表达式时提供给 ExpressionFactorygetExpectedType() 所返回的类型。
context
zh_cn
此计算的上下文。
return
zh_cn
表达式求值的结果。
ThrowsNullPointerException:
zh_cn
如果 context 为 null
ThrowsPropertyNotFoundException:
zh_cn
如果由于指定变量或属性不存在或不可读导致某个属性解析操作失败。
ThrowsELException:
zh_cn
如果执行属性或变量解析时抛出异常。抛出的异常必须作为此异常的 cause 属性包含(如果可用)。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值