JSP详解(2) -内置对象之request

JSP内置对象

1.request
表示一次请求,是HttpServletRequest类的对象
2.response
表示一次响应,是HttpServletResponse类的对象
3.pageContext
表示页面上下文,可以获取页面信息,是PageContext类 对象
4.session
表示一次会话,一般用来保存用户信息,是HttpSession类对象
5.application
表示当前的web应用,是一个全局对象,可以保存所有用户的共享信息, 是ServletContext类对象
6.config
当前JSP对应的Servlet的ServletConfig对象,可以获取当前Servlet的信息
7.out
向浏览器输出数据,是JspWriter类对象
8.page
当前JSP对应的Servlet对象
9.exception
表示JSP页面发生的异常,是Exception类对象

常用对象

request、response、session、pageContext、application

新建项目

使用继承HttpServlet的方式
在这里插入图片描述

request对象的常用方法

1. getParameter方法
String getParameter(String key)
//该方法用来获取客户端传来的参数
/*
客户端向服务端传递的参数都是按key-value形式传递的
getParameter通过key的值获得与其对应的value的值
*/

(1)在HelloServlet类的doGet方法内使用getParameter方法
在这里插入图片描述
在打开的浏览器页面地址内输入
在这里插入图片描述
在IDEA的控制台就会输出信息
在这里插入图片描述
(2)直接在jsp文件内使用
新建test.jsp文件,写入代码
在这里插入图片描述
在这种方式下,并没有显式的去创建request对象也能使用
这是因为request对象是JSP的内置对象,它其实是已经存在的
编译运行,在打开的浏览器页面地址内输入
在这里插入图片描述
就可以直接在页面内显示

2. setAttribute方法
void setAttribute(String key, Object value)
//通过键值对的形式保存数据
3. getRequestDispatcher方法
RequestDispatcher getRequestDispatcher(String path)
//返回一个RequestDispatcher对象,该对象的forward方法用于请求转发
4. getAttribute方法
void getAttribute(String key)
//根据key取出value
上面四种方法的使用情况

在这里插入图片描述

假设在服务端里有两个JSP,我们首先使用getParameter方法(方法1)从客户端取得数据,并使用setAttribute方法(方法2)将数据保存在第一个JSP内,这个时候用方法3将请求转发到第二个JSP内,第二个JSP再使用方法4获得数据
getParameter方法完成的是客户端与服务端之间的数据传输
getAttribute方法完成的是服务端内部之间的数据传输

代码实现

(1)在test.jsp文件内调用request对象的getParameter方法获得key对应的value —方法1
在这里插入图片描述
(2)调用request对象的setAttribute方法保存数据—方法2
在这里插入图片描述
(3)新建test2.jsp文件,将test.jsp中保存的数据转发给test2.jsp—方法3
在这里插入图片描述
(4)在test2.jsp内调用request对象的getAttribute方法获取数据—方法4
在这里插入图片描述
(5)编译运行
在浏览器页面输入test.jsp,回车
在这里插入图片描述
这时候可以看出,这里的223是test2.jsp里的值

5. getParameterValues()方法
String[] getParameterValues()
//获得客户端传来的多个同名参数
举例

(1)新建test3.jsp文件,写入以下代码
在这里插入图片描述
(2)编译运行,并在地址中写入指令
在这里插入图片描述
发现在页面内只显示了第一个name的对应的value
(3)这个时候就可以使用getParameterValues()方法
在这里插入图片描述
编译运行,输入相同指令
在这里插入图片描述

6. setCharacterEncoding方法
void setCharacterEncoding(String charset)
//指定每个请求的编码
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值