获取ObjectStack属性的4种方式

Posted lkjhgfdsa123

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了获取ObjectStack属性的4种方式相关的知识,希望对你有一定的参考价值。

如下,

需要获取

ObjectStack中的email属性值

方法一:

 <s:property value="email"/>//从栈顶开始获取email属性,若栈顶没有,从获取下一个对象的emial属性   等同于----><s:property value="[0].email"/>

方法二:

  ${requestScope.email }  由于该request对象是StructRequestWarpper类型,重写了getAttribute方法,该方法能够获取ValueStack中的内容,所以能获得ObjectStack中的值

方法三:

  ${email }  el表达式有一个功能呢就是全域查找(如果没有标明域对象的话,一次查找pageScope,requestScope,sessionScope,applicationScope)

当查到requestScope域时匹配到email 则输出

方法四:

<s:property value="#request.email"/> 

 

 调试后你会发现 该#request也是StructRequestWrapper类实例化的 同el表达式

 

 

结果

 

以上是关于获取ObjectStack属性的4种方式的主要内容,如果未能解决你的问题,请参考以下文章

反射机制

Struts:OGNL表达式

03_OGNL

从 Mongoose 模型中获取模式属性

获取 Class 类实例的4种方式

可枚举属性和不可枚举属性(for...in循环和Objec.keys()和Object.getOwnPropertyNames())