JSP九大内置对象

JSP九大内置对象


JSP中一共预先定义了9个内置对象:内置对象,又叫做隐含对象,不需要预先声明就可以在脚本代码和表达式中使用request、response、session、application、out、pagecontext、config、page、exception

四个作用域对象

request

request对象封装了由客户端生成的HTTP请求的所有细节,主要包括HTTP头信息、系统信息、请求方式和请求参数等。通过request对象提供的相应方法可以处理客户端浏览器提交的HTTP请求中的各项参数

常用方法

	// 将KV键值对,存入"request请求"范围内
	request.setAttribute("key", "value");
	//获取request范围内变量内的数据
	request.getAttribute(String name);
	//根据页面表单的组件名称获取页面提交的数据
	request.getParameter(String name);
	//获取一个页面表单对于多个值时的用户请求
	request.getParameterValues(String name);
	//指定请求的编码集,可用于处理中文乱码问题
	request.setCharacterEncoding(env);
	//获得一个RequestDispatcher对象,该对象的forward方法用于请求转发
	request.getRequestDispatcher(path);
	//获取本次发起请求的客户端IP地址
	request.getRemoteAddr();
	//获取服务器本地的IP地址
	request.getLocalAddr();
session

session在网络中被称为会话。由于HTTP协议是一种无状态协议,当一个客户向服务器发出请求,服务器接收请求,并返回响应后,该连接就结束了,而服务器并不保存相关的信息。通过session可以在应用程序的Web页面间进行跳转时,保存用户的状态,使整个用户会话一直存在下去
会话的生命周期:
会话开始:客户端的第 1 次请求
会话结束:1.客户端浏览器关闭;2.客户端超时(Tomacat默认为30分钟)3.服务器关闭

获取当前Session会话对象

HttpSession session=request.getSession();		 

常用方法

//将当前KV键值对,存入Session会话(服务器端)
 session.setAttribute("key", "value");
//从当前Session会话中,根据key获取value
session.getAttribute("key");
//返回session对象创建的时间(单位毫秒,格林尼治时间)
session.getCreationTime()
//获取本次会话最后一次访问时间
session.getLastAccessedTime()   
application

application对象用于保存所有应用中的共有数据。它在服务器启动时自动创建,在服务器停止时销毁。当application对象没有被销毁时,所有用户都可以共享该application对象。与session对象相比,application对象的生命周期更长,类似于系统的“全局变量”

获取当前application对象

ServletContext application=request.getServletContext();

常用方法

//获取session超时时间
application.getSessionTimeout();
//将KV键值对,存入"application应用"范围内
application.setAttribute("key", "value");
//从"application应用"范围内获取数据
application.getAttribute(String name);
pageContext

获取页面上下文的pageContext对象是一个比较特殊的对象,通过它可以获取JSP页面的request、response、session、out、exception等对象

作用域:只在当前页

// 将KV键值对,存入"pageContext"页面"范围内
pageContext.setAttribute("key", "value");
//获取参数值
pageContext.getAttribute();
	
五个其他对象
response

response对象用于响应客户请求,向客户端输出信息。它封装了JSP产生的响应,并发送到客户端以响应客户端的请求。请求的数据可以是各种数据类型,甚至是文件。response对象在JSP页面内有效

常用方法

//重定向到指定页面
response.sendRedirect(String location);
//设置HTTP响应报头
response.setHeader(name, value);
//指定响应的编码集,可用于处理中文乱码问题
response.setContentType("text/html;charset=utf-8");
out

out对象用于在Web浏览器内输出信息,并且管理应用服务器上的输出缓冲区

常用方法

//输出
out.print();
//换行输出
out.println();
//刷新流
out.flush();

config

config对象主要用于取得服务器的配置信息

常用方法

//获取服务器中name参数的初始值
config.getInitParameter(name);
//获取服务器中所有参数的初始值
config.getInitParameterNames();
//获取Servlet上下文
config.getServletContext();
//获取Servlet服务器名
config.getServletName();
page

page对象代表JSP本身,只有在JSP页面内才是合法的。page对象本质上是包含当前Servlet接口引用的变量,可以看作是this关键字的别名

exception

异常对象,只有当前页面的page指令中isErrorpage=true,方可使用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值