好东西,希望对你有帮助 pageContext.getAttribute("username") -> request.getAttribute("username") -> session.getAttribute("username") -> application.getAttribute("username") 【EL表达式详解关于web的问题】 EL(Expression Language)是JavaServer Pages(JSP)2.0规范的一部分,提供了一种简洁的方式来访问JavaBean属性、JSP页面上下文中的对象和表达式语言支持的内置函数。它使得在JSP页面中获取和操作数据变得更加简单,避免了过多的脚本元素(scriptlets)。 1. **EL的基本语法** EL表达式通常以`$`符号开始,后跟大括号`{}`。例如`${username}`会尝试查找并返回`username`属性的值。EL支持多种运算符,如算术运算符、比较运算符(ge和le用于大于等于和小于等于)、逻辑运算符等。 2. **EL的作用域** 当EL表达式尝试获取变量时,它会在以下四个作用域中按顺序查找: - `pageContext`:只存在于当前的JSP页面。 - `request`:在整个HTTP请求中有效,包括转发到的其他页面。 - `session`:在整个用户会话期间有效。 - `application`:在整个应用生命周期内有效,所有用户共享。 如果在多个作用域中都定义了同一个变量,EL会优先返回最先找到的非空值。 3. **禁用EL表达式** 有时可能需要禁用EL表达式,这可以通过以下三种方式实现: - 在单个JSP页面中,使用指令`<%@ page isELIgnored="true" %>`来禁用EL。 - 在`WEB-INF/web.xml`配置文件中,使用`jsp-property-group`标签批量禁用所有`.jsp`文件中的EL。这需要web.xml版本为2.4或更高。 - 如果web.xml定义为2.3版本,由于EL是在2.4版本引入的,因此所有JSP页面默认都会禁用EL。 4. **注意事项** - 修改`web.xml`以禁用EL表达式后,如果JSP文件已经转换为Servlet并缓存在工作目录下,需要清除缓存才能看到效果。 - 使用EL可以提高代码的可读性和可维护性,建议尽量避免在JSP中使用scriptlet代码。 5. **解决EL表达式失效问题** 如果遇到EL表达式不起作用的情况,应检查是否有人在上述三个位置设置了禁用EL的配置。同时,确保正确地在适当的作用域中设置和检索变量,以防止因作用域问题导致的错误。 EL表达式在Web开发中提供了强大的数据访问能力,简化了JSP页面的编程模型。了解其工作原理和如何禁用EL,有助于排查问题并优化代码质量。建议开发者熟练掌握EL表达式,以便更好地利用其功能。




















剩余7页未读,继续阅读


- 粉丝: 16
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 吉林大学网络机电一体化技术答案.doc
- 学生成绩自动统计分析软件.pdf
- 机械及电气自动化基础.pptx
- 人工智能简介PPT.ppt
- 计算机网络体系结构与协议.ppt
- 专升本《计算机组成原理》模拟题试卷.doc
- 网络营销经济阿里金融业务版图加速扩容跨境支付等或年.pptx
- 遗传算法的C++代码实现教程.doc
- 用友致远协同管理软件操作手册.doc
- 通信交流引入规范.doc
- 最新的软件工程试题及参考答案.doc
- 云计算导论:概念-架构与应用PPT第4章.pptx
- 基于目标与项目管理相结合绩效考评体系构建的研究样本.doc
- 某医院网络与信息安全自查工作总结报.doc
- 网络改造实施方案.doc
- 2023年CAD机械制图常用图纸技术要求.doc


