requestScope 表示从 request 范围内取得.
其他的还有 sessionScope, pageScope 和 applicationScope, 分别对应 4 种属性范围.
而如果直接写 ${password} 表示从四种属性范围顺序查找.
- $ {}是一种取值简写的方式。requestScope是在请求的范围内password是一个属性
- 以上$ {
- requestScope.password
- }表示从request的范围内取一个属性为password的值,
- 和getParameter类似但不一样,password的值术语上是属性,用attribute表示
- attribute和parameter是不同的。
- parameter是表单提交的时候,加的"参数"。而不是"属性"
这个问题很简单,你已经把这个对象保存到 Session 里面页面你这样
1 |
|
直接点属性名,不能用 get 方法。
希望采纳!
EL 表达式获取对象属性的原理是这样的:
以表达式 ${user.name} 为例
EL 表达式会根据 name 去 User 类里寻找这个 name 的 get 方法,此时会自动把 name 首字母大写并加上 get 前缀,一旦找到与之匹配的方法,El 表达式就会认为这就是要访问的属性,并返回属性的值。
所以,想要通过 EL 表达式获取对象属性的值,那么这个属性就必须有与之对应的 get 方法。
其实你要了解 EL 表达式的运行原理,它其实后台也对应的代码,
它会先将你 EL 表达式中的对象属性的首字符大写,拼成 getXX() 方法,
然后利用反射将对象构建出来,然后再执行 getXX() 方法,
所以这中间不关私有属性的事,调用的是私有属性的 get/set 方法。
如果你不写 get/set 方法,那 EL 表达式就拿不到值了。set 方法是给你后台设置值用的。
来源: http://www.bubuko.com/infodetail-1858020.html