JSP常用内置对象

JSP(动态网页,基于BS架构)

  • 不是和是否有“动感”混为一谈
  • 看网页是否会随时间、地点、用户操作的改变而改变

两种架构(BS/CS)

CS:

  • A、如果软件升级 所有(客户端)软件都需要升级
  • B、维护麻烦、需要维护每一台客户端软件
  • C、每一台客户端都需要安装客户端软件
    BS:
  • 客户端可以通过浏览器直接访问服务端
    **注意BS CS各有优势谁也不是谁的替代品 **

九大内置对象

1、request

  • 含义:请求对象,存储“客户端向服务端发送的请求信息“
常见方法 参数类型 返回值
getParameter(String name) key(input标签name的属性) value
getParameterValues(String name) key(input标签name的属性) String[] 多个value
SetCharacterEncoding (“编码格式utf-8”) 默认(tomca7.0:“iso-8859-1“,8.0”utf-8“) Void
getRequestDispatcher(”b.jsp”).forward(request,response); 请求转发的页面
getServletContext() Object

2、response响应对象

常见方法 参数类型 返回值
( 服务端向客户端增加cookie对象)addCookie(Cookie cookid) cookid void
(重定向)sendRedirect(String location) throws IOException locationc重定向页面 void
(设置编码格式)setContetType(String type) 默认(tomca7.0:“iso-8859-1“,8.0”utf-8“) Void

比较

请求转发 重定向
getRequestDispatcher(”b.jsp”).forward(request,response); sendRedirect(String location) throws IOException;
地址栏是否改变 不变(check.jsp) 改变(success.jsp)
是否保留第一次请求时的数据 保留 不保留
请求的次数 1 2

3、session(服务端)会话对象

** Cookie(客户端,不是内置对象)需要new:Cookie是由服务端生成的,再发给客户端保存 相当于本地缓存: 客户端->服务端**

常见方法 参数类型 返回值
添加cookieaddCookie(Cookie cookid) cookid void
request.getCookies() 无 全部获取 对象集
String getName() 对应cookies[i]
String getValue() 对应cookies[i]
Void setmaxAge(int expry毫秒) expry毫秒 Void

服务端增加cookie:response对象
客户端获取cookie:request对象
建议Cookie中只保存英文和数字否则需要编码和解码

  • 每次访问服务端都会产生一个session,为什么不会匹配错误呢 因为有JSESSIONID
  • 客户端第一次请求服务端时,服务端会产生一个session对象(用于保存该客户的信息);并且每个session对象都会有一个唯一的sessionID(用去区分其他session),服务端会产生一个cookie,并且改cookie的name=JSESSIONID,vale=服务端的sessionid的值然后服务端会在响应客户端的同时将该cookie发送给客户端所以和护短就有了一个cookie(JSESSIONISD),这样客户端的cookie就可以和服务端的session一一对应了
  • 之后请求服务端是:服务端会先用客户端cookie的JSESSIONID去服务端的session中匹配sessionid,如果匹配成功,说明此用户不是第一次访问,就无需登陆
  • 强调:1、色的Dion存储在服务端 2、session实在同一个客户端(客户)请求时共享3、实现机制:在第一次客户请求时 产生一个sessionid并复制给cookie的jsessiod发给客户端
    Session
常见方法 参数类型 返回值
SetAtribute(KV) 给session赋值 value
getAtribute(K) K value
getID() 获取sessionID String
setMaxInactiveInterval(秒) 设置最大有效 非活动时间 void
get MaxInactiveInterva(秒) 获取最大有效 非活动时间 int

比较

Session Cookie
保存的位置 服务端 客户端
安全性 较安全 不安全
保存的内容 (String name,Object value) (String name,String value)

客户端在第一次请求服务端是如果服务端发现此请求没有JSESSIONID则会创建一个name=JSEESSIONID的cookie返回给客户端

4、application全局对象

常见方法 参数类型 返回值
getContexPath() 返回当前项目的虚拟路径
getRealPath( getContexPath() ) 项目虚拟路径 返回项目绝对路径

5、pageContext JSP页面容器

6、config 配置对象(服务器配置信息)

7、page 当前JSP页面对象(相当于java中的this)

8、Out 输出对象,向客户端输出内容

9、exeception 异常对象

猜你喜欢

转载自blog.csdn.net/weixin_45498245/article/details/109283228