欢迎来到天天文库
浏览记录
ID:39297304
大小:856.81 KB
页数:23页
时间:2019-06-29
《标准操作标签与表达式标签》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第四讲表达式标签纲要EL概述EL的基础语法EL的运算符EL的隐式对象2EL简介EL全名为ExpressionLanguage,它原本是JSTL1.0为方便存取数据所自定义的语言。当时EL只能在JSTL标签中使用,如下:JSP2.0之后,EL已经正式纳入成为标准规范之一,因此,只要是支持Servlet2.4/JSP2.0的Container,就都可以在JSP网页中直接使用EL了3EL基本语法JSP表达式语言的语法${ELExpression}所有的表达式以”${”开始,以”}”结束。(说明:如果在JSP中需
2、要显示${,使用${转义)。[]与.运算符两种运算符来存取数据。下列两者所代表的意思是一样的例:${sessionScope.user.sex}等于:${sessionScope.user["sex"]}区别:当要存取的属性名称中包含一些特殊字符,如.或–等并非字母或数字的符号,就一定要使用[],例如:${user.My-Name}改为${user["My-Name"]}4EL基本语法EL表达式可以用于:获取页面表单提交的参数进行数学与逻辑运算计算出结果获取属性中的对象获取JavaBean的属性值不同于Scriptlet的表达式,EL表达式更方
3、便和简洁。5//disp1.jsp使用JSP脚本、表达式等<%request.setCharacterEncoding("GBK");%>用户姓名:<%=request.getParameter("name")%>
用户密码:<%=request.getParameter("password")%>
确认密码:<%=request.getParameter("rpassword")%>
<%String[]hobby=request.getParameterValues("hobby");Stringhobbies="";if(hob
4、by!==null){for(inti=0;i业余爱好:<%=hobbies%>//disp2.jsp使用JSP的表达式语言(EL)等<%request.setCharacterEncoding("GBK");%>用户姓名:${param.name}用户密码:${param.password}确认密码:${param.rpassword}业余爱好:${paramValues.hobby[0]}${paramValues.hobby[5、1]}${paramValues.hobby[2]}${paramValues.hobby[3]}功能相同,代码更简洁6EL基本语法EL的使用环境:可使用page指令指定,形式为:<%@pageisELIgnored=true6、false%>其中:true值说明不能解析EL,false值则表示可以解析EL,不过JSP2.0起默认支持EL,通常可不设置。7(1)EL中的常量布尔常量:只有true和false两个值整数常量:同Java中的整数,范围在Long.MIN_VALUE~Long.MAX_VALUE之间浮点常量:同Java中的浮点数,范围在D7、ouble.MIN_VALUE~Double.MAX_VALUE之间字符串常量:用双引号(“”)和单引号(‘’)括起来的一串字符。只有与分界符相同时,才需要进行转义(”或’)Null常量:只有一个,即为null(2)EL中的变量EL将“变量映射到一个对象”上,其中的变量不用先定义,而是直接使用,如果是隐式对象,则直接使用;若为非隐式对象,则依次在page、request、session、application中查找,若找不到,就返回null。EL基本语法8(3)EL对出错信息的处理EL对错误信息的处理更为友好,例如:user对象不存在,${u8、ser}返回为空(非null),即使是${user.name}也是为空,不会抛出异常。但如果变量存在,但属性不存在,则抛出异常。<%@pagecontentType="text/html;charset=gb2312"%><%request.setAttribute("now",newjava.util.Date());%>user变量指向的对象为null,表达式${user}的输出结果为:${user}user变量指向的对象为null,表达式${user.name}的输出结果为:${user.name}now变量指向的对9、象类型为Date,表达式${now.time}的输出结果为:${now.time}9<%@pagecontentType="
用户密码:${param.password}
确认密码:${param.rpassword}
业余爱好:${paramValues.hobby[0]}${paramValues.hobby[
5、1]}${paramValues.hobby[2]}${paramValues.hobby[3]}功能相同,代码更简洁6EL基本语法EL的使用环境:可使用page指令指定,形式为:<%@pageisELIgnored=true
6、false%>其中:true值说明不能解析EL,false值则表示可以解析EL,不过JSP2.0起默认支持EL,通常可不设置。7(1)EL中的常量布尔常量:只有true和false两个值整数常量:同Java中的整数,范围在Long.MIN_VALUE~Long.MAX_VALUE之间浮点常量:同Java中的浮点数,范围在D
7、ouble.MIN_VALUE~Double.MAX_VALUE之间字符串常量:用双引号(“”)和单引号(‘’)括起来的一串字符。只有与分界符相同时,才需要进行转义(”或’)Null常量:只有一个,即为null(2)EL中的变量EL将“变量映射到一个对象”上,其中的变量不用先定义,而是直接使用,如果是隐式对象,则直接使用;若为非隐式对象,则依次在page、request、session、application中查找,若找不到,就返回null。EL基本语法8(3)EL对出错信息的处理EL对错误信息的处理更为友好,例如:user对象不存在,${u
8、ser}返回为空(非null),即使是${user.name}也是为空,不会抛出异常。但如果变量存在,但属性不存在,则抛出异常。<%@pagecontentType="text/html;charset=gb2312"%><%request.setAttribute("now",newjava.util.Date());%>user变量指向的对象为null,表达式${user}的输出结果为:${user}user变量指向的对象为null,表达式${user.name}的输出结果为:${user.name}now变量指向的对
9、象类型为Date,表达式${now.time}的输出结果为:${now.time}9<%@pagecontentType="
此文档下载收益归作者所有