实例解析JSP中EL表达式的各种运用
来源:
中文源码网 浏览:283 次 日期:2024-04-27 18:49:54
【下载文档: 实例解析JSP中EL表达式的各种运用.txt 】
实例解析JSP中EL表达式的各种运用
EL运算符:
<%@page language="java" contentType="text/html;charset=gb2312"%>
<%@page import="java.sql.*" %>
El算数运算符
算数运算符 |
结果 |
加法运算符\${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?"Yes":"No"} |
结果${2>1?"Yes":"No"} |
\${2<1?"Yes":"No"} |
结果${2<1?"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的值
Cookie c = new Cookie("username","root");
//添加cookie到客户端
response.addCookie(c);
%>
显示cookie的值<%@page language="java" contentType="text/html;charset=gb2312"%>
取得cookie的值
cookie中的username的值为:${cookie.username.value}
header内置对象
取得header的值
${header["host"]}
${header["user-agent"]}
initParam内置对象:获取web站点中设置的环境变量
<%@page language="java" contentType="text/html;charset=gb2312"%>
获得环境参数
username参数值:${initParam.username}
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
version="2.5">
username
Zhangdapeng
pageContex内置对象
用来取得有关用户请求和页面的详细信息
<%@page language="java" contentType="text/html;charset=gb2312"%>
pageContext演示
取得请求的参数的字符串 |
${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.*" %>
设置JavaBean中的属性
<%
//实例化一个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"%>
取得JavaBean中的属性值
姓名:${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.*" %>
设置Map页面
<%
//新建一个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"%>
使用存储器读取map中的数据
用户名:${sessionScope.userInfo.username}
密码:${sessionScope.userInfo.password}
使用存储器读取数组中的数据
<%@page language="java" contentType="text/html;charset=gb2312"%>
<%@page import="java.util.*,com.javaweb.ch08.*" %>
设置Array页面
<%
String[] names = {"zhangda1","zhangda2","zhangda3"};
//将值存储到session范围中
session.setAttribute("names",names);
%>
跳转到GetArrayDemo.jsp
<%@page language="java" contentType="text/html;charset=gb2312"%>
使用存储器读取map中的数据
用户名1:${sessionScope.names[0]}
用户名2:${sessionScope.names[1]}
存储器的复杂应用
<%@page language="java" contentType="text/html;charset=gb2312"%>
<%@page import="java.util.*,com.javaweb.ch08.*" %>
设置Array页面
<%
ArrayList persons = 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"%>
使用存储器读取map中的数据
用户名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}