1)el表达式分为 值表达式和方法表达式,方法表达式只可以执行方法本身,值表达式可以获取表达式的值,也可以给表达式设置值。
一个表达式字符串可以由值表达式和方法表达式混合组成,下面示例的report.getReportParameters().get(0)部分是方法表达式,后面的.value是值表达式,只要表达式的最后部分是值表达式,就可以给整个表达式赋值,如下的inputText中的表达式能接收用户的输入。
<h:inputText value="#{report.getReportParameters().get(0).value}" />
下面的inputText只能显示,不能获取用户输入,输入后提交抛异常。
<h:inputText value="#{report.getReportParameters().get(0)}" />
2)el访问 list和map
#{bean.list[index].value}//index是数字
#{bean.map['key'].value}//对map中key对应的对象(复杂对象)的value属性进行操作,如果map中没有key对应的对象,set操作时抛出异常
#{bean.map['key']}//对map中key对应的简单对象进行操作。提交值时,如果map中key对应的对象没有就会将key设置进map中。下面示例,页面显示时cycleValueMap中可能没有一个key,也可能只有几个key,但提交时map中会有全部的key
private Map<String, Boolean> cycleValueMap;
ValueExpression ve = getValueExpression("value");
ve.setValue(context.getELContext(), getLocalValue());//map的赋值是将<key,getLocalValue()> put进去
使用list来接收值就不太方便,list需要提前构造好全部值,否则set时会抛出下面的异常。数组越界
value="#{calendarParam.list[3]}": java.lang.IndexOutOfBoundsException: Index: 3, Size: 3
ValueExpression ve = getValueExpression("value");
ve.setValue(context.getELContext(), getLocalValue());//list 可能会调用public void add(int index, E element)
或 public E set(int index, E element)方法,这个方法会抛出数组越界异常。
周一<h:selectBooleanCheckbox
value="#{calendarParam.cycleValueMap['1']}"></h:selectBooleanCheckbox>
周二<h:selectBooleanCheckbox
value="#{calendarParam.cycleValueMap['2']}"></h:selectBooleanCheckbox>
周三<h:selectBooleanCheckbox
value="#{calendarParam.cycleValueMap['3']}"></h:selectBooleanCheckbox>
...
周日<h:selectBooleanCheckbox
value="#{calendarParam.cycleValueMap['7']}"></h:selectBooleanCheckbox>
list方式需要提前构造好list中的值,否则会抛出数组越界异常
<h:selectBooleanCheckbox
value="#{calendarParam.list[2]}"></h:selectBooleanCheckbox>
分享到:
相关推荐
Java JSP页面技术之EL表达式整理归纳总结的知识点如下: EL表达式的概念和作用: EL表达式,全称Expression Language(表达式语言),是一种在JSP(Java Server Pages)技术中使用到的,用于简化Java Web应用程序中...
EL表达式语言主要用于简化Java Servlets和JSP页面中的数据访问,而JSTL则提供了一套丰富的标签库,帮助开发者更高效地处理常见任务。 EL表达式: 1. EL是一种简洁的脚本语言,用于获取和设置JavaBeans或其他可绑定...
EL表达式的隐式对象 EL表达式的隐式对象是JSP中的一种特殊对象,用于存储和访问当前Web应用程序的状态信息。EL表达式隐式对象可以分为两类:一类是pageContext对象,另一类是四个域(page、request、session、...
这次整理自定义标签主要是项目的需要,要将一些写死的url信息配置于配置文件中,这样发版的时候改动起来相当方便
3. **代码格式化**:内置的代码格式化功能,可以让开发者按照统一的编码风格整理EL表达式,保持代码整洁。 4. **集成开发环境(IDE)集成**:蜜蜂EL编辑器V3.6可以与主流的IDE如Eclipse、IntelliJ IDEA等无缝集成,...
EL调用Java方法需要满足两个要求:① 在EL表达式中调用的只能是Java类的静态方法;② 这个Java类的静态方法需要在我们另外在自定义的TLD文件中描述。 EL函数是指被EL表达式调用的方法。EL函数可以在JSP页面中使用,...
JavaEE基础知识整理涵盖了JavaEE技术框架的各个方面,包括Servlet、MVC设计模式、连接池、JavaBean、JSTL、自定义标签和EL表达式等。-mastering these concepts is essential for any JavaEE developer.
当EL表达式无法找到对应的属性或者属性值为null时,可能会抛出异常。因此,在使用EL表达式时需要注意确保引用的属性是可用的。 ### 国际化资源文件 原文中的“struts.custom.i18n.resources”配置项用于指定Struts...
4. **笔记**:可能是作者在学习过程中整理的要点和难点,包括理解EL和JSTL的关键点、常见问题及解决方案。 5. **代码**:可能包含示例代码,演示了EL和JSTL的用法,这些代码可以作为学习者参考和实践的模板。 通过...
【Web程序设计A】试卷A主要涵盖了Web应用开发中的核心概念和技术,包括SQL语句的使用、JDBC操作、Servlet编程、用户登录处理、JSTL与EL表达式以及数据库的基本操作。以下是对这些知识点的详细说明: 1. **SQL语句与...
EL表达式可以访问JavaBean的属性、执行算术运算、调用方法等,而JSTL则负责控制流程、数据处理等高级逻辑。 通过结合使用JSTL和EL,开发者可以构建出功能丰富、动态响应的Web应用界面,同时保持代码的清晰性和...
EL表达式在JSP页面中嵌入,如`${bean.property}`,可以动态计算并返回值。EL还支持基本操作,如算术运算、比较和逻辑运算。 最后,**JSTL**提供了一系列预定义的标签库,简化了JSP页面的编写。例如,`c:forEach`...
- JSP的生命周期与Servlet类似,但主要关注脚本元素、指令元素和EL表达式。 - JSP的九大内置对象:`request`、`response`、`session`、`application`等,它们在何时何地创建和销毁。 3. **HTTP协议** - HTTP状态...
### VUE整理(一) #### 创建 Vue 实例 在 Vue.js 中,每个应用程序都是通过创建一个新的 Vue 实例开始的。创建实例的过程涉及到定义一个配置对象,该对象包含了用于驱动 Vue 应用的数据和行为。 ##### 示例代码...
2. **Servlet和JSP**:掌握Servlet生命周期,理解JSP的脚本元素和EL表达式。 3. **Tomcat服务器**:了解Tomcat的配置和优化方法。 4. **Ajax**:理解异步请求,会使用XMLHttpRequest或jQuery的$.ajax()方法。 5. **...
如果已知键的值,可以直接通过EL表达式`${map.key}`来获取对应的值。如果键是一个变量,例如`key`,则可以使用方括号语法`${map[key]}`来获取值。如: ```html ${map[key]}" /> <!-- key 是 map 中的一个 key -->...
* @Value:值得注入,经常与 Spring EL 表达式语言一起使用,注入普通字符,系统属性,表达式运算结果,其他 Bean 的属性,文件内容,网址请求内容,配置文件属性值等等 * @PropertySource:指定文件地址,提供了一...