日期:2014-05-18  浏览次数:20765 次

高手帮忙: jsp 中 expression language ${expression} 的执行时机
请问与一般的jsp脚本语言及标签库语言相比, el 的执行时机是??

最好稍微说一下el 在jsp container 中的执行过程

------解决方案--------------------
jsp也是要被编译成servlet的
你说执行的时机是什么?
------解决方案--------------------
总体而言,jsp页面是从上向下执行的,首先编译的是<%%>中的内容,这是java代码,会在服务器上就执行好;然后是javascript和el(应该是同级别的,顺序一样),会在客户端上被解析。

其他的不明白,如果你问的是,el在什么地方执行,答案是他在客户端(浏览器)执行,顺行是从上向下,和js是同级的。
------解决方案--------------------
帮顶
------解决方案--------------------

为什么el是在客户端执行,不是可以该换为<%=XX %>吗?不是等效的吗?不是很理解?

------解决方案--------------------
显示的效果是一样的,但在客户端执行要比在服务器端执行快,因为这样减轻了服务器的负担
服务器要运行成千上万这样的小程序,就相对客户端要慢。
------解决方案--------------------
EL表达式是在server端执行的

EL表达式由JSP编译器在编译JSP时解析成相应的java代码或者说方法
在输出HTML代码时直接调用编译后的方法输出,这时已经不存在EL表达式的形式
编译后的代码可以查看发布目录下的相应的编译后的java文件

EL的优势:比<% %>易懂易用,实质上可以理解为<% %>的高级包装
------解决方案--------------------
我错了,楼主不要见外,el是在服务器端执行的,原谅我吧...