EL运算符:
<%@page language="java" cOntentType="text/html;charset=gb2312"%> <%@page import="java.sql.*" %>
算数运算符 | 结果 |
加法运算符\${1 + 1} | 结果${1+1} |
减法运算符\${1 - 1} | 结果${1-1} |
乘法运算符\${1 * 2} | 结果${1 * 1} |
除法运算符\${3 / 2} | 结果${3 / 2} |
求余运算符\${3 % 2} | 结果${3 % 2} |
关系运算符 | 结果 |
等于运算符\${1 == 1} | 结果${1==1} |
不等于运算符\${1 != 1} | 结果${1!=1} |
小于运算符\${1 <2} | 结果${1 <2} |
大于运算符\${3 > 2} | 结果${3 > 2} |
小于等于运算符\${1 <= 2} | 结果${1 <= 2} |
大于等于运算符\${3 >= 2} | 结果${3 >= 2} |
逻辑运算符 | 结果 |
逻辑运算符&& | |
\${true && true} | 结果${true && true} |
\${true && false} | 结果${true && false} |
\${false && false} | 结果${false && false} |
逻辑运算符|| | |
\${true || true} | 结果${true || true} |
\${true || false} | 结果${true || false} |
\${false || false} | 结果${false || false} |
逻辑运算符! | |
\${!true} | 结果${!true} |
\${!false} | 结果${!false} |
条件运算符 | 结果 |
\${2>1&#63;"Yes":"No"} | 结果${2>1&#63;"Yes":"No"} |
\${2<1&#63;"Yes":"No"} | 结果${2<1&#63;"Yes":"No"} |
验证运算符 | 结果 |
\${empty param.username} | 结果${empty param.username} |
\${empty param.password} | 结果${empty param.password} |
括号运算符及运算符的优先级 | 结果 |
EL处理内置对象:
“.”和"[]"符号是用来存取数据的
${applicationScope.user.username} ${applicationScope.user[0].username} ${applicationScope.user["user-name"]}
通过变量来传值就必须使用[]
${applicationScope.user["data"]}
与存储有关的内置对象
<% //application范围设置属性name,值为application_name application.setAttribute("name","application_name"); //session范围设置属性name,值为session_name session.setAttribute("name","session_name"); //request范围设置属性name,值为request_name request.setAttribute("name","request_name"); //page范围设置属性name,值为page_name pageContext.setAttribute("name","page_name"); %> <%--获取page范围内的name属性--%> page范围内的那么属性的值为:${pageScope.name}
<%--获取request范围内的name的属性--%> request范围内的那么属性的值为:${requestScope.name}
<%--获取session范围内的name的属性--%> session范围内的那么属性的值为:${sessionScope.name}
<%--获取application范围内的name属性--%> application范围内的那么属性的值为:${applicationScope.name}
与输入有关的内置对象
用户名:
密码:
姓名:
性别:男女
爱好:
打篮球
看书
旅行
编程
<% //设置页面编码格式 request.setCharacterEncoding("gb2312"); %> <%--接收用户参数--%> 用户名:${param.username}
密码:${param.password}
姓名:${param.name}
性别:${param.sex}
爱好:${paramValues.interest[0]} ${paramValues.interest[1]}
COOKIE内置对象
<% //设置COOKIE的值 COOKIE c = new COOKIE("username","root"); //添加COOKIE到客户端 response.addCOOKIE(c); %> 显示COOKIE的值 <%@page language="java" cOntentType="text/html;charset=gb2312"%> COOKIE中的username的值为:${COOKIE.username.value}
header内置对象
${header["host"]}
${header["user-agent"]}
initParam内置对象:获取web站点中设置的环境变量
<%@page language="java" cOntentType="text/html;charset=gb2312"%> username参数值:${initParam.username}
<&#63;xml version="1.0" encoding="ISO-8859-1"&#63;>username Zhangdapeng
pageContex内置对象
用来取得有关用户请求和页面的详细信息
<%@page language="java" cOntentType="text/html;charset=gb2312"%>
取得请求的参数的字符串 | ${pageContext.request.queryString} |
取得请求URL | ${pageContext.request.requestURL} |
取得web应用名称 | ${pageContext.request.contextPath} |
取得HTTP请求方式(POST/GET) | ${pageContext.request.method} |
取得使用的协议 | ${pageContext.request.protocol} |
取得用户IP地址 | ${pageContext.request.remoteAddr} |
判断session是否为新 | ${pageContext.session.new} |
取得session的id | ${pageContext.session.id} |
EL存取器:
使用存取器读取JavaBean中的数据
package com.javaweb.ch08; import java.util.*; //一个简单的JavaBean示例 public class Person{ //name属性 private String name; //age属性 private int age; //sex属性 private String sex; //friends属性 private ArrayList friends; //无参构造方法 public Person(){ } //自定义构造的方法 public Person(String name,int age,String sex){ this.name = name; this.age = age; this.sex = sex; } //获取name的属性值 public String getName(){ return name; } //获取age属性值 public int getAge(){ return age; } //获取sex的属性值 public String getSex(){ return sex; } //设置name的属性 public void setName(String name){ this.name = name; } //设置age的属性值 public void setAge(int age){ this.age = age; } //设置sex的属性值 public void setSex(String sex){ this.sex = sex; } //设置friends的值 public void setFriends(ArrayList friends){ this.friends = friends; } //获取friends的属性值 public ArrayList getFriends(){ return friends; } }
<%@page language="java" cOntentType="text/html;charset=gb2312"%> <%@page import="java.util.*,com.javaweb.ch08.*" %> <% //实例化一个Person Person person = new Person("zhangdapeng",24,"男"); //创建一个friends实例 ArrayList friends = new ArrayList(); //添加值 friends.add("wang wu"); friends.add("li si"); person.setFriends(friends); //存储在session范围内 session.setAttribute("person",person); %> 跳转到GetJavaBean.jsp <%@page language="java" cOntentType="text/html;charset=gb2312"%> 姓名:${sessionScope.person.name}
年龄:${sessionScope.person.age}
性别:${sessionScope.person.sex}
朋友:${sessionScope.person.friends[0]},${sessionScope.person.friends[1]}
使用存储器读取Map中的数据
<%@page language="java" cOntentType="text/html;charset=gb2312"%> <%@page import="java.util.*,com.javaweb.ch08.*" %> <% //新建一个HashMap HashMap userInfo = new HashMap(); //在HashMap中设置值 userInfo.put("username","zhangdapeng"); userInfo.put("password","zhnagda123"); //将值存储到session范围中 session.setAttribute("userInfo",userInfo); %> 跳转到GetMapDemo.jsp <%@page language="java" cOntentType="text/html;charset=gb2312"%> 用户名:${sessionScope.userInfo.username}
密码:${sessionScope.userInfo.password}
使用存储器读取数组中的数据
<%@page language="java" cOntentType="text/html;charset=gb2312"%> <%@page import="java.util.*,com.javaweb.ch08.*" %> <% String[] names = {"zhangda1","zhangda2","zhangda3"}; //将值存储到session范围中 session.setAttribute("names",names); %> 跳转到GetArrayDemo.jsp <%@page language="java" cOntentType="text/html;charset=gb2312"%> 用户名1:${sessionScope.names[0]}
用户名2:${sessionScope.names[1]}
存储器的复杂应用
<%@page language="java" cOntentType="text/html;charset=gb2312"%> <%@page import="java.util.*,com.javaweb.ch08.*" %> <% ArrayListpersOns= new ArrayList (); Person person1 = new Person("wang wu",24,"男"); Person person2 = new Person("wang liu",24,"女"); persons.add(person1); persons.add(person2); session.setAttribute("persons",persons); %> 跳转到GetArrayDemo.jsp <%@page language="java" cOntentType="text/html;charset=gb2312"%> 用户名1:${sessionScope.persons[0].name},${sessionScope.persons[0].age},${sessionScope.persons[0].sex}
用户名2:${sessionScope.persons[1].name},${sessionScope.persons[1].age},${sessionScope.persons[1].sex}