JSP内置对象1

本文介绍了JSP内置对象,如request、response、session等的功能及使用方法,详细讲解了它们在客户端与服务器交互过程中的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

JSP内置对象

包括:


  • request请求对象
  • response响应对象
  • session会话对象
  • application全局对象
  • out输出对象
  • config配置对象
  • exception异常对象
  • page页面对象
  • pageContext页面上下文对象

JSP的这些内置对象其实都是由特定的JAVA类产生的,在服务器运行时根据情况自动生成。


request请求对象:


request对象包含的是客户端向服务器发出请求的内容,即该对象封装了用户提交的信息。


当客户端通过HTTP协议请求一个JSP页面时,JSP容器就会将请求信息包装到request对象中,即创建request对象;当JSP容器完成该请求后,request对象就会被撤销。


request对象可以获取请求对象中所包含的参数的值的方法有:getParameter、getParameterNames和getParameterValues

客户端向服务器发送数据时,通常采用GET方法和POST方法


注意:GET方法(从指定的服务器中获取数据)和POST方法(提交数据给指定的服务器处理)

1.get方法以显示提交表单可以在地址栏看见我们传的参数,post方法是隐形传值,不可见


2.get请求能够被缓存,post不行


3.get请求会保存在浏览器的浏览记录中,post不行


4.get请求有长度限制,post没有


5.后退或者刷新时,post数据会被重新提交,get没有影响


6.post方式请求乱码:

(1)方法一:request.setCharacterEncoding(“utf-8”);

(2)方法二:String name=new String(request.getParameter(“name”).getBytes(“ISO-8859-1”),(“UTF-8”));

get方式请求乱码:

a)步骤一 :response.setCharacterEncoding(“utf-8”);

b)步骤二:String name=new String(request.getParameter(“name”).getBytes(“ISO-8859-1”),(“UTF-8”));


request中setAttribute和getAttribute方法一般都是成对出现,首先通过setAttribute()方法设置属性与属性值,然后通过getAttribute()方法根据属性获取到与该属性对应的对象值


setAttribute和getAttribute方法都是在服务器端内部执行>
,客户端不知道服务器端是否执行过这两个方法




response响应对象:


response对象代表的是对客户端的响应,可以通过response对象来组织发送到客户端的数据

response对象的作用:

1.页面跳转

2.设置页面头信息

3.设置响应类型(MIME)

4.发送错误信息

5.向客户端写cookie



是一种能够让网站服务器把少量数据存储到客户端的硬盘或内存,或是从客户端的硬盘读取数据的一种技术(就是服务器暂存放在你计算机上的一笔资料,好让服务器用来辨认你的计算机)


1.创建cookie对象

Cookie cookie=new Cookie(“username”,username);

response.addCookie(cookie);

Cookie cookie1=new Cookie(“user”,user);

Cookie cookie2=new Cookie(“password”,password);


2.设置cookie的有效期

cookie1.setMaxAge(24*60*60*1000);

cookie2.setMaxAge(24*60*60*1000);


3.向客户端写cookie

response.addCookie(cookie1);

response.addCookie(cookie2);


4.读取cookie

String user=”“;

String password=”“;

Cookie[] cookies=request.getCookies();


JSP页面的跳转有两种方式:

1.客户端跳转:response.sendRedirect();

特征:地址栏中的地址会发生改变

不能用request对象传递数据


2.服务器端跳转:jsp:forward

特征:地址栏中的地址不会改变

能用request对象传递数据


常见错误代码:

200 - 服务器成功返回网页

404 - 请求的网页不存在

503 - 服务不可用

400 - (错误请求)服务器不理解请求的语法

500 - (服务器内部错误)服务器遇到错误,无法完成请求


动态响应contentType属性

再把输出结果传送到浏览器时,浏览器必须启动相应的应用程序来处理该文档


为了标识文档的类型,服务器通过HTTP报头的content-Type来指定


在JSP中,设定MIME类型的方法是通过response对象的setContentType()方法


服务器在发送真正的数据之前,会先发送标志数据的MIME类型的信息




session会话对象


session对象代表服务器与客户端所建立的会话,当需要在不同的JSP页面中保留客户信息的情况下使用


每个客户对应一个session对象


浏览器不关闭,session对象会一直存在,且session对象只有一个。如果浏览器关闭重启,会创建新的session对象




application全局对象


application对象用于在多个程序中保存信息。用来在所有用户间共享信息,并可以在Web应用程序运行期间持久地保持数据


一旦创建application对象,该对象将一直保持下去,直到服务器关闭为止


application对象只有一个,他会被所有的用户共享


application的存活范围比request和session都要大

页面之间传递信息可以用以下三个内置对象(生命周期不同)

1.request:服务器端跳转的页面之间,一次请求

2.session:在用户访问网站的整个过程中都有效,关掉网站,则失效

3.application:在服务器启动的过程中都有效,关闭服务器,则失效

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值