Q1:
JSP:EL中 pageContext.request 和 requestScope 的区别?
A:
pageContext.request是一个具体的对象,在你的http请求过程中存在。
requestScope是一个Map,这个Map中存放了在request作用域中的属性键值对,就这么简单而已,它不是request对象,而是request对象属性的封装,pageContext.request才是真正的request对象。
EL中你可以在这个周期中放置、获取对象。(当然,其实真正的操作也是针对request对象的)。 比如${requestScope.a},其实就是要表明我告诉jsp要到requestScope这个声明周期中获取对象a。而背后的实现就是从request.getAttribute("a"),然后根据表达式得到相应的a对象。
其是仔细观察这两个图,你会发现他们的联系,相信大家,就不具体写出了。
附1:JSP内置对象
附2:EL内置对象