JSP9大内置对象

3 篇文章 0 订阅
3 篇文章 0 订阅

在这里插入图片描述


out : 输出对象
config : 服务器配置对象
page : 当前JSP页面对象(this)
exception : 异常对象
pageContext : 当前页面page对象


request: 请求对象

存储客户端向服务端发送的请求信息
常见方法:
String getParameter(String name) //name为key 返回value

String[] getparameterValues(String name) //返回String[]

setCaracterEncoding(“utf-8”) // 服务端知道客户端是什么编码

getRequestDispatcher(“b.jsp”).forward(request,response) // 请求转发A -> B

ServletContext getServerContext() //获取项目的ServletContext对象

Cookie[] getCookie() //获取所有Cookie


response:响应对象

常见方法:
void addCookie(Cookie cookie) // 服务端向客户端增加cookie对象

void sendRedirect(String location) throws IOException // 页面跳转的一种方式(重定向)

void setContetType(String type) // 设置服务端相应的编码

请求转发重定向
地址栏是否改变不变(check.jsp)变(success.jsp)
保留第一次请求时数据保留不保留
请求的次数12
跳转发生的位置服务端客户端发出的第二次跳转

请求转发:request.getRequestDispatcher(“b.jsp”).forward(request,response);
重定向:response. sendRedirect(“b.jsp”) ;

请求转发:login -> check -> success -> login
重定向 : login -> check -> login -> success -> login


session&cookie

Cookie

(客户端,非内置对象):由服务端产生,发送给客户端保存
相当于本地缓存,作用:提高访问效率,但是安全性差

name(key) – value
javax.servlet.http.Cookie

public Cookie(String name , String value)
String getName()
String getValue()
String setMaxAge(int expiry) // 最大有效期(秒)

服务端准备cookie : response.addCookie(Cookie cookie)
客户端获取cookie : request.getCookies();

a.服务端用response增加,客户端用request获取
b.只能一次性获取所有cookie
(例子可看https://www.bilibili.com/video/av29086718?p=8 10min)


session会话

(一次会话:开始-结束)
机制:客户端第一次请求服务端(JSESSIONID - sessionID 匹配失败) -> 服务端产生session对象,有唯一sessionID同时产生一个cookie,name = JESSIONID,value = 服务端sessionID,响应客户端时发送cookie
->客户端的cookie和服务端session一一对应
->第二次(JSESSIONID - sessionID)匹配成功
主要方法:
String getId(); // SessionId
boolean isNew() // 是否是新用户
void invalidate() //使session失效

void setAttribute(“name”,name);
Object getAttribute();

void setMaxInactiveInterval(秒) // 设置最大有效 非活动时间
int getMaxInactiveInterval()

sessioncookie
保存的位置服务端客户端
安全性较安全较不安全
保存的内容ObjectString

application

全局对象,有整个项目的属性
主要方法
String getContextPath() //获取虚拟路径
String getRealPath(String location) //获取虚拟路径对应绝对路径


4个范围对象(从小到大)

共同方法
Object getAttribute(String name)
void setAttribute(String name.Object obj) //有改无增
void removeAttribute(String name)

名称定义有效范围
pageContextJSP页面容器(page对象)当前页面有效(页面跳转无效)
request请求对象同一次请求有效(重定向无效)
session会话对象同一次会话有效(切换浏览器则无效)
application全局对象整个项目有效(关闭服务、其他项目无效)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值