EL表达式的使用
来源:互联网 发布:python 最优化工具包 编辑:程序博客网 时间:2024/05/21 21:35
EL表达式的使用
(1)什么是el表达式
是一套简单的运算规则,用于给jsp标签的属性赋值,也可以直接输出。
(2)el表达式的使用
1)访问bean的属性
a.方式一 day10_2.e3.jsp
${user.name} :
容器会依次从pageContext,request,session,application中查找(getAttribute)绑订名称为"user"的对象,找到该对象之后,会调用该对象的"getName"方法,最后输出。
a1. 会将null转换成""输出。
a2.找不到该对象,不报空指针异常,会输出""。
a3.可以使用pageScope,requestScope,sessionScope,application来指定查找范围。
day10_2.e3.jsp 代码:
<%@page pageEncoding="utf-8" contentType="text/html; charset=utf-8" %><%@page import="bean.*" %><html><head></head><body><%User user = new User();user.setName("zs");user.setAge(22);request.setAttribute("user",user);User user1 = new User();user1.setName("wangwu");user1.setAge(24);session.setAttribute("user",user1);%>name:<%//User user1 = (User)request.getAttribute("user");//out.println(user1.getName());%><br>姓名:${user.name}<br>session上的 姓名:${sessionScope.user.name }</body></html>
bean.User.java代码:
package bean;public class User {private String name;private int age;private String[] interest;public String[] getInterest() {return interest;}public void setInterest(String[] interest) {this.interest = interest;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}}
b.方式二 day10_2.e4.jsp
${user["name"]} / ${user['name']}注:
b1.[]里面可以出现绑订名(变量)。
b2.[]里面可以出现从0开始的下标,用于访问数组中的某个元素。${user.interest[1] }(interest为数组)
day10_2.e4.jsp 代码:
<%@page pageEncoding="utf-8" contentType="text/html; charset=utf-8" %><%@page import="bean.*" %><html><head></head><body><%User user = new User();user.setName("zhangs");user.setAge(22);user.setInterest(new String[]{"台球","足球","篮球"});request.setAttribute("user",user);User user1 = new User();user1.setName("wangw");user1.setAge(24);session.setAttribute("user",user1);%>name:${user["name"] }<br/><%request.setAttribute("propname","age");%><!-- []里面可以出现绑订名(变量) -->年龄:${user[propname] }<br/><!-- []里面可以出现从0开始的下标,用于访问数组中的某个元素 -->兴趣爱好:${user.interest[1] }<br/></body></html>
2)进行一些简单的运算
运算的结果可以给jsp标签的属性赋值,也可以直接输出(e5.jsp)。
a.算术运算 +,-,*,/,%
注: +号只能求和(不能连接字符串)。
b.关系运算 >,>=,<,<=,==,!=
c.逻辑运算 && || !
d.empty运算
判断集合是否为空或者是否是一个空字符串。是,返回true。
以下四种情况都是true,其他都是false:
d1,空字符串
d2,空的集合(集合中没有任何元素)
d3,null
d4,找不到值
e5.jsp代码示例:
<%@page pageEncoding="utf-8" contentType="text/html; charset=utf-8" %><%@page import="java.util.*" %><html><head></head><body><!-- 算术运算 +,-,*,/,% --><!-- +号只能求和(不能连接字符串) -->1+2=${1+2 }<br/>100+200=${"100"+"200" }<br/><!-- 关系运算 >,>=,<,<=,==,!= --><!-- 结果都是true/false -->1>0?${1>0 }<br/><%request.setAttribute("str1","abc");request.setAttribute("str2","abcd");%>${str1 == str2 }<br/>${str1 == "abc"}<br/>${sessionScope.str1 == "abc" }<br/><!-- 逻辑运算 && || ! --><!-- empty运算 结果为true/false--><!-- 判断集合是否为空或者是否是一个空字符串;是,返回true --><%request.setAttribute("str3","");%>空字符串:${empty str3 }<br/><%List list = new ArrayList();//list.add("");request.setAttribute("list",list);%>空的集合:${empty list }<br/><%request.setAttribute("obj",null);%>值为null:${empty obj}<br/>找不到值:${empty sss }<br/></body></html>
3)读取请求参数值 (e6.jsp)
a. ${param.username} 等价于request.getParameter("username");
b.${paramValues.city} 等价于request.getParamterValues("city");
e6.jsp示例代码:
<%@page pageEncoding="utf-8" contentType="text/html; charset=utf-8" %><html><head></head><body>username:${param.username }<br/>interest:${paramValues.i [1] }<br/></body></html>
- EL表达式的使用
- El表达式的使用
- El表达式的使用
- el表达式的使用
- El 表达式的使用
- el表达式的使用
- EL表达式的使用
- EL表达式的使用
- EL表达式的使用
- EL 表达式的使用
- EL表达式的使用
- EL表达式的使用
- el表达式的使用
- EL表达式的使用
- EL表达式的使用
- EL表达式的使用
- EL表达式的使用
- EL表达式使用的限制
- Java关键字final、static使用总结
- 互联网思维下运营商的服务变革
- 学习笔记(一)
- 几个不太常用的HTML标签
- HDOJ 2151 Worm 【动态规划 DP】
- EL表达式的使用
- 如何在标题栏中添加下拉菜单-安卓开发
- Myeclipse导入项目出错之二(运行环境出错)
- QT 应用程序关闭某个窗口时,关闭打开的所有其他窗口并退出程序
- SOLR的简单环境搭建及与数据库建立索引
- HadoopConsumer——消费kafka中若干topic的消息,追加存储至hdfs的不同文件内
- 使用java Condition构建生产者消费者
- OpenGL里用gluTessBeginPolygon画带孔和凹多边形需要非常注意的一个问题!
- HDU 1158(dp)