EL運算子:
<%@page language="java" contentType="text/html;charset=gb2312"%><%@page import="java.sql.*" %><!DOCTYPE html><html> <head> <title>El算數運算子</title> </head> <body> <table border=1> <tr> <td>算數運算子</td> <td>結果</td> </tr> <tr> <td>加法運算子\${1 + 1}</td> <td>結果${1+1}</td> </tr> <tr> <td>減法運算子\${1 - 1}</td> <td>結果${1-1}</td> </tr> <tr> <td>乘法運算子\${1 * 2}</td> <td>結果${1 * 1}</td> </tr> <tr> <td>除法運算子\${3 / 2}</td> <td>結果${3 / 2}</td> </tr> <tr> <td>求餘運算子\${3 % 2}</td> <td>結果${3 % 2}</td> </tr> </table> <table border=1> <tr> <td>關係運算子</td> <td>結果</td> </tr> <tr> <td>等於運算子\${1 == 1}</td> <td>結果${1==1}</td> </tr> <tr> <td>不等於運算子\${1 != 1}</td> <td>結果${1!=1}</td> </tr> <tr> <td>小於運算子\${1 < 2}</td> <td>結果${1 < 2}</td> </tr> <tr> <td>大於運算子\${3 > 2}</td> <td>結果${3 > 2}</td> </tr> <tr> <td>小於等於運算子\${1 <= 2}</td> <td>結果${1 <= 2}</td> </tr> <tr> <td>大於等於運算子\${3 >= 2}</td> <td>結果${3 >= 2}</td> </tr> </table> <table border=1> <tr> <td>邏輯運算子</td> <td>結果</td> </tr> <tr> <td colspan="2">邏輯運算子&&</td> </tr> <tr> <td>\${true && true}</td> <td>結果${true && true}</td> </tr> <tr> <td>\${true && false}</td> <td>結果${true && false}</td> </tr> <tr> <td>\${false && false}</td> <td>結果${false && false}</td> </tr> <tr> <td colspan="2">邏輯運算子||</td> </tr> <tr> <td>\${true || true}</td> <td>結果${true || true}</td> </tr><tr> <td>\${true || false}</td> <td>結果${true || false}</td> </tr><tr> <td>\${false || false}</td> <td>結果${false || false}</td> </tr> <tr> <td colspan="2">邏輯運算子!</td> </tr> <tr> <td>\${!true}</td> <td>結果${!true}</td> </tr><tr> <td>\${!false}</td> <td>結果${!false}</td> </tr> </table> <table border=1> <tr> <td>條件運算子</td> <td>結果</td> </tr> <tr> <td>\${2>1?"Yes":"No"}</td> <td>結果${2>1?"Yes":"No"}</td> </tr> <tr> <td>\${2<1?"Yes":"No"}</td> <td>結果${2<1?"Yes":"No"}</td> </tr> </table> <table border=1> <tr> <td>驗證運算子</td> <td>結果</td> </tr> <tr> <td>\${empty param.username}</td> <td>結果${empty param.username}</td> </tr> <tr> <td>\${empty param.password}</td> <td>結果${empty param.password}</td> </tr> </table> <table border=1> <tr> <td>括弧運算子及運算子的優先順序</td> <td>結果</td> </tr> </table> </body></html>
EL處理內建對象:
“.”和"[]"符號是用來存取資料的
${applicationScope.user.username}${applicationScope.user[0].username}${applicationScope.user["user-name"]}
通過變數來傳值就必須使用[]
${applicationScope.user["data"]}
與儲存有關的內建對象
<!DOCTYPE html><html> <head> <title>與儲存有關的內建對象</title> </head> <body> <% //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}<br /> <%--擷取request範圍內的name的屬性--%> request範圍內的那麼屬性的值為:${requestScope.name}<br /> <%--擷取session範圍內的name的屬性--%> session範圍內的那麼屬性的值為:${sessionScope.name}<br /> <%--擷取application範圍內的name屬性--%> application範圍內的那麼屬性的值為:${applicationScope.name}<br /> </body></html>
與輸入有關的內建對象
<!DOCTYPE html><html> <head> <title>使用者表單</title> </head> <body> <form action="UserDemo.jsp" method="post"> 使用者名稱:<input type="text" name="username" /><br /> 密碼:<input type="password" name="password" /><br /> 姓名:<input type="text" name="name" /><br /> 性別:<input type="radio" name="sex" value="男">男<input type="radio" name="sex" value="女">女<br /> 愛好:<br /> <input type="checkbox" name="interest" value="打籃球">打籃球<br /> <input type="checkbox" name="interest" value="看書">看書<br /> <input type="checkbox" name="interest" value="旅行">旅行<br /> <input type="checkbox" name="interest" value="編程">編程<br /> <input type="submit" value="提交"> <input type="reset" value="重設"> </form> </body></html><!DOCTYPE html><html> <head> <title>接收使用者參數</title> </head> <body> <% //設定頁面編碼格式 request.setCharacterEncoding("gb2312"); %> <%--接收使用者參數--%> 使用者名稱:${<span style="color:#003399;">param</span>.username}<br /> 密碼:${<span style="color:#003399;">param</span>.password}<br /> 姓名:${<span style="color:#003399;">param</span>.name}<br /> 性別:${<span style="color:#003399;">param</span>.sex}<br /> 愛好:${<span style="color:#003399;">paramValues</span>.interest[0]} ${<span style="color:#003399;">paramValues</span>.interest[1]} </body></html>
cookie內建對象
<!DOCTYPE html><html> <head> <title>設定cookie的值</title> </head> <body> <% //設定cookie的值 Cookie c = new Cookie("username","root"); //添加cookie到用戶端 response.addCookie(c); %> <a href="getCookieDemo.jsp">顯示cookie的值</a> </body></html><span style="color:#000000;"><%@page language="java" contentType="text/html;charset=gb2312"%><!DOCTYPE html><html> <head> <title>取得cookie的值</title> </head> <body> cookie中的username的值為:${cookie.username.value} </body></html>
header內建對象
<!DOCTYPE html><html> <head> <title>取得header的值</title> </head> <body> ${header["host"]}<br /> ${header["user-agent"]}<br /> </body></html>
initParam內建對象:擷取web網站中設定的環境變數
<%@page language="java" contentType="text/html;charset=gb2312"%><!DOCTYPE html><html> <head> <title>獲得環境參數</title> </head> <body> username參數值:${initParam.username}<br /> </body></html><?xml version="1.0" encoding="ISO-8859-1"?><web-app xmlns="http://java.sun.com/xml/ns/javaee" 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"> <context-param> <param-name>username</param-name> <param-value>Zhangdapeng</param-value> </context-param></web-app>
pageContex內建對象
用來取得有關使用者請求和頁面的詳細資料
<%@page language="java" contentType="text/html;charset=gb2312"%><!DOCTYPE html><html> <head> <title>pageContext示範</title> </head> <body> <table border="1"> <tr> <td>取得請求的參數的字串</td> <td>${pageContext.request.queryString}</td> </tr><tr> <td>取得請求URL</td> <td>${pageContext.request.requestURL}</td> </tr><tr> <td>取得web應用程式名稱</td> <td>${pageContext.request.contextPath}</td> </tr><tr> <td>取得HTTP請求方式(POST/GET)</td> <td>${pageContext.request.method}</td> </tr><tr> <td>取得使用的協議</td> <td>${pageContext.request.protocol}</td> </tr><tr> <td>取得使用者IP地址</td> <td>${pageContext.request.remoteAddr}</td> </tr><tr> <td>判斷session是否為新</td> <td>${pageContext.session.new}</td> </tr><tr> <td>取得session的id</td> <td>${pageContext.session.id}</td> </tr> </table> </body></html>
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.*" %><!DOCTYPE html><html> <head> <title>設定JavaBean中的屬性</title> </head> <body> <% //執行個體化一個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); %> <a href="GetJavaBean.jsp">跳轉到GetJavaBean.jsp</a> </body></html><%@page language="java" contentType="text/html;charset=gb2312"%><!DOCTYPE html><html> <head> <title>取得JavaBean中的屬性值</title> </head> <body> 姓名:${sessionScope.person.name}<br /> 年齡:${sessionScope.person.age}<br /> 性別:${sessionScope.person.sex}<br /> 朋友:${sessionScope.person.friends[0]},${sessionScope.person.friends[1]}<br /> </body></html>
使用儲存空間讀取Map中的資料
<%@page language="java" contentType="text/html;charset=gb2312"%><%@page import="java.util.*,com.javaweb.ch08.*" %><!DOCTYPE html><html> <head> <title>設定Map頁面</title> </head> <body> <% //建立一個HashMap HashMap userInfo = new HashMap(); //在HashMap中設定值 userInfo.put("username","zhangdapeng"); userInfo.put("password","zhnagda123"); //將值儲存到session範圍中 session.setAttribute("userInfo",userInfo); %> <a href="GetMapDemo.jsp">跳轉到GetMapDemo.jsp</a> </body></html><%@page language="java" contentType="text/html;charset=gb2312"%><!DOCTYPE html><html> <head> <title>使用儲存空間讀取map中的資料</title> </head> <body> 使用者名稱:${sessionScope.userInfo.username}<br /> 密碼:${sessionScope.userInfo.password}<br /> </body></html>
使用儲存空間讀取數組中的資料
<%@page language="java" contentType="text/html;charset=gb2312"%><%@page import="java.util.*,com.javaweb.ch08.*" %><!DOCTYPE html><html> <head> <title>設定Array頁面</title> </head> <body> <% String[] names = {"zhangda1","zhangda2","zhangda3"}; //將值儲存到session範圍中 session.setAttribute("names",names); %> <a href="GetMapDemo.jsp">跳轉到GetArrayDemo.jsp</a> </body></html><%@page language="java" contentType="text/html;charset=gb2312"%><!DOCTYPE html><html> <head> <title>使用儲存空間讀取map中的資料</title> </head> <body> 使用者名稱1:${sessionScope.names[0]}<br /> 使用者名稱2:${sessionScope.names[1]}<br /> </body></html>
儲存空間的複雜應用
<%@page language="java" contentType="text/html;charset=gb2312"%><%@page import="java.util.*,com.javaweb.ch08.*" %><!DOCTYPE html><html> <head> <title>設定Array頁面</title> </head> <body> <% ArrayList<Person> persons = new ArrayList<Person>(); Person person1 = new Person("wang wu",24,"男"); Person person2 = new Person("wang liu",24,"女"); persons.add(person1); persons.add(person2); session.setAttribute("persons",persons); %> <a href="GetMapDemo.jsp">跳轉到GetArrayDemo.jsp</a> </body></html><%@page language="java" contentType="text/html;charset=gb2312"%><!DOCTYPE html><html> <head> <title>使用儲存空間讀取map中的資料</title> </head> <body> 使用者名稱1:${sessionScope.persons[0].name},${sessionScope.persons[0].age},${sessionScope.persons[0].sex}<br /> 使用者名稱2:${sessionScope.persons[1].name},${sessionScope.persons[1].age},${sessionScope.persons[1].sex}<br /> </body></html>