Cookie使用?
- 创建cookie对象,(键值对形式,有多个数据就创建多个Cookie对象):Cookie
cookie=new Cookie(“uname”,“zhangsan”);
- 把cookie对象添加到response对象中:
response.addCookie(cookie); - 获取cookie数据:
Cookie[] cookies=request.getCookies();
if(cookies!=null){
for(Cookie c:cookies){
String name=c.getName();
String value=c.getValue();
if("uname".equals(name)||"pwd".equals(name))
out.print(name+":"+value+"<br>");
}
}
-
cookie的输出
利用cookie提供的 -
cookie进阶
-
设置有效期:cookie.setMaxAge(10);
-
实现五分钟内面输入登录
-
其它内置对象
- config对象,用于获取配置信息。(针对Servlet类)
- exception异常对象,只能在错误页面可以使用
EL表达式的概念及用法
利用EL表达式卡哇伊获取参数的值、获得隐含对象作用于中属性的值,从而可以替代JSP页面中的复杂代码
- 基本格式:${表达式}
-
计算基本的表达式:${a+b}
-
访问数组:
${names[0]},${names[1]}
- 访问对象:
${user.username},${user.pwd}
${user["username"]},${user["pwd"]}
中括号应用范围更广
- 访问集合
ArrayList list=new ArrayList();
list.add(new userInfo("lisi","123"));
application.setAttribute("list1",list);
//第一种形式
${list1.get(0).username},${list1.get(0).pwd}
//第二种形式
${list1[1].username},${list1[1].pwd}
- 访问map集合
HashMap map=new HashMap();
map.put("uname","zhangsan");
map.put("pwd","123");
map.put("adress.aa","洛阳");
map.put("user",user);
pageContext.setAttribute("map",map);
//注意,有特殊符号时只能用中括号形式访问
${map.uname},${map.pwd},${map["adress.aa"]}
- EL隐藏对象(11个)
-
参数访问对象
-
param
${param.username}
-
paramValues
${paramValues.hobby[0]},${paramValues.hobby[1]}
-
-
作用域访问对象(四个)
范围:pageContext>request>session>application
${pageSccope.a1+pageScope.b1}
-
上下文访问对象
- pageContext
${pageCotext.request.remoteHost}
-
头部请求对象:
${header["host"]} ${headerValues["Accept"][0]}
-
-
算术运算符:+,-,*,/ div,% mod
-
比较运算符:
>
gt
,>=
ge
,<
lt
,<=
le
,==
eq
,!=
ne
-
逻辑运算符:
&&
and
,|
or
,|
not
-
条件运算符:
? :
-
判空运算符:
empty
${name1==null || name1==""}
-
JSTL概述
-
定义:用于解决常见问题的自定义标签库
-
目的:简化前台页面代码
-
使用方式:
-
添加JSTL、standard的jar包
-
添加jsp页面并加入taglib指令
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
-
-
标签:
-
表达式操作标签
-
out
标签<c:out value="hello"></c:out> <c:out value="" default="默认值"><c:out> <c:out value="" default="默认值"><c:out>
-
set
标签<c:set var="name" value="zhangsan"><c:set> <jsp:useBean id="user" class="com.haust.entity.UserInfo"></jsp:useBean> //给对象属性赋值 <c:set target="${user}" property="username" value="lisi"></c:set> //键值对集合 <c:set target="${map}" property="uname" value="lisi"></c:set>
-
remove
标签<c:remove var="name"/>
-
-
条件标签
-
if
标签<c:if test="${10>5}">十大于五</c:if>
-
choose、when、otherwise
标签
<c:choose> <c:when test="${age<18}"> 年龄小于18不能打疫苗 </c:when> <c:when test="${age>=18 and age<60}"> 可以打疫苗 </c:when> <c:otherwise test="${age>=18 and age<60}"> 可以打疫苗 </c:otherwise> </c:choose>
-
-
迭代标签
forEach
标签
-
forEach
属性
//forEach遍历数组 <c:forEach items="${nums}" var="item" varStatus="status"></c:forEach> ${item} <c:if test="${status.count%3==0}"><br></c:if> //forEach遍历map <c:forEach items="${map}" var="item" varStatus="status"> <c:choose> <c:when test="${status.last}"> ${item.value}:${item.value.username}-${item.value.pwd}<br> </c:when> <c:otherwise> ${item.key}:${item.value}<br> </c:otherwise> </c:choose> </c:forEach> 1-100奇数和 <c:set var="sum" value="0"></:set> <c:forEach begim="1" end="100" step="2" var="i"> <c:set var="sum" value="${sum+i}"></c:set> </c:forEach> ${sum}
forTokens
标签
//前台输入,通过jstl实现后台数据输出 1.forTokens <c:forTokens items="${param.stu}" delims="," var="item"> ${item}<br> </c:forTokens>
-
-
URL 标签
import
标签
<c:import url="input.jsp" ></c:import> //将文件里的内容保存在变量var中 <c:import url="input.jsp" var="url"></c:import> ${url}
-
url
标签//显示网址 <c:url value="input.jsp" ></c:url> //将网址保存后展示 <c:url value="input.jsp" var="url1"></c:url> ${url} //添加子标签 <c:url value="input.jsp" > <c:param name="uname" value="lisi"></c:param> <c:param name="pwd" value="123"></c:param> </c:url>
-
redirect
标签<c:redirect url="doinput.jsp"> <c:param name="stu" value="488,366,3"></c:param> </c:redirect>
-
国际化格式
标签requestEncoding
<fmt:requetEncoding value="utf-8"></fmt:requetEncoding>
formatDate
<jsp:useBean if="date" class="java.util.Date"></jsp:useBean> <fmt:formatDate value="${date}" pattern="yyyy-MM-dd hh:mm:ss E"></fmt:formatDate>
MVC模式和servlet技术
e=“utf-8”></fmt:requetEncoding>
- `formatDate`
[外链图片转存中...(img-wegoiQHG-1621251176073)]
```xml
<jsp:useBean if="date" class="java.util.Date"></jsp:useBean>
<fmt:formatDate value="${date}" pattern="yyyy-MM-dd hh:mm:ss E"></fmt:formatDate>