javaweb 03-JSP九大内置对象

JSP九大内置对象:

**1.Out:**输出对象,向客户端输出内容
2.Request:请求对象,存储“客户端向服务器发生的请求信息”
Request对象的常见方法:
①String getParameter(String name):根据请求的字段名(key),返回字段值(value)
②String[] getParameterValues(String name):根据请求字段名,返回多个字段值
③Void setCharacterEncoding(编码utf-8):设置请求编码
④GetRequestDispatcher(“b.jsp”).forward(request,response):请求转发,如A页面可以跳转到B页面
⑤getServerContext():获取项目的ServletConext对象

get和post请求方式的区别:
A.get方式在地址栏显示请求信息,地址栏容纳的信息有限,请求数据存在大文件,会出错
B.文件上传操作,必须是post

统一请求编码request:
A.get方式请求如果出现乱码:
a.统一每个变量的编码
如:new String(旧编码,新编码);
Name = new String(name,getBytes(“iso-8859-1”),”utf-8”);
b.修改server.xml,URIEncoding=”UTF-8”
B.post方式请求出现乱码:
request.setCharacterEncoding(“utf-8”);

**3.response:**响应对象
常见的方法:
Void addCookie(Cookie cookie):服务端向客户端增加cookie对象
Void sendRedirect(String location) throws IOExcrption:页面跳转的一种方式(重定向)
Void setContextType(String type):设置服务端响应的编码(设置服务端的contentType类型)
**4.pageContext:**JSP页面容器
5.Session(服务端):
Cookie(客户端,不是内置对象javax.servlet.http.Cookie):由服务端生成的,发给客户端保存
cookie可以通过构造方法:public Cookie(String name,String value)创建
相关的方法:
String getName():获取name
String getValue();获取value
Void setMaxAge(int expiry):最大有效期(秒)

服务端发生给客户端:
Response.addCookie(Cookie cookie)
客户端获取cookie:
Request.getCookies()
session机制:
客户端第一次请求服务端时,服务端会产生一个session对象(用于保存该客户的信息),并且每个session对象都有一个唯一的sessionId(用于区别其他session)
服务端会产生一个cookie,并且该cookie的name=JSESSIONID,value=服务端sessionId的值
然后服务端会在响应客户端的同时,将该cookie发生给客户端,至此客户端就有了一个cookie(JSESSINID)
因此,客户端的cookie就可以与服务端的session一一对应(JSESSION–sessionID)

客户端第二/n次请求服务端:服务端会先用客户端cookie中的JSESSIONID去服务端的session中匹配sessionId,如果匹配成功,说明此用户不是第一次访问

Session:
session存储在服务端
session是在同一用户(客户)请求共享
实现机制:第一次客户请求产生sessionId并复制给cookie的jsessinId,然后发给客户端。最终通过session的sessionId-cookie。

session方法:
String getId():获取sessionId
Boolean isNew():判断是否是新用户(第一次访问)
Void invalidate():使session失效(退出登录、注销)

Void setMaxInactiveInterval(秒):设置最大有效(非活动时间)

cookie和session的区别:
Session cookie
保存的位置 服务端 客户端
安全性 较安全 较不安全
保存的内容 object String

Cookie:
不是内置对象,使用时要new
但当客户端第一次请求服务端时,服务端发现此请求没有JSESSIONID,就会创建name=JSESSIONID的cookie,并返回给客户端

**6.application:**全局对象

常见方法:
String getContextPath():虚拟路径
String getRealPath(String name): 绝对路径

**7.config:**配置对象(服务器配置信息)
**8.page:**当前JSP页面对象(相当于JAVA中this)
**9.exception:**异常对象

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

夜吟东方独自醉

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值