JSP内置对象 四种属性和范围

目的
为了简化用户的开发
不需要用户实例化 可以直接使用
内置对象
1.pageContext JSP的页面容器
2.request 得到用户的·请求信息
3.response 服务器向客户端的回应信息
4.session 用来保存用户的每一个信息
5.application 表示所有用户的共享信息
6.config 服务器配置,可以取得初始化参数
7.out 页面输出
8.page 表示从该页面中表示出来的一个servlet实例
9.exception 表示JSP页面所发生的异常,在错误页中才起作用
JSP内置对象四种属性范围
在JSP中提供了四种属性的保存范围,所谓的属性保存范围,指的就是一个设置的对象,可以在多少个页面中保存并可以继续使用
四种属性范围
pageContext:只在一个页面中保存属性,跳转之后无效
request:只在一次请求中保存,服务器跳转之后任然有效
session:在一次会话范围中,无论何种跳转都可以使用,但是新开浏览器无法使用
application:在整个服务器上保存,所有用户都可以使用
属性操作方法
public void setAttribute(String name,Object o) 设置属性的名称及内容
public Object getAttribute(String name) 根据属性名称取得属性
public void removeAttribute(String name) 删除指定的属性
1. page属性范围(pageContext 范围)
本页可取得 forward 跳转之后本页无法取得
2. request属性范围
服务器跳转之后依然保留 forward 跳转 
request表示客户端的请求 正常情况下一个服务器只回应一次
如果是服务端跳转 请求地址没有改变 所以相当于回应了一次 地址栏改变相当于第二次请求 第一次请求内容消失 无法取得
3.session属性范围
任何一个与设置页面相关的页面中取得 服务器 客户端
4.application
所有用户都能看到
request内置对象
接收客户端发送来的请求信息 客户端到服务器
request内置对象的常用操作
1.getParameter 接收客户端发来的请求参数内容
2.getParameterValues 取得客户端发来的一组请求参数内容
3.getParameterNames 取得全部请求参数的名称
4.getRemoteAdd 得到客户端的IP地址
5.setCharacterEncoding 设置统一的请求编码
6.isUserRole 进行用户的身份验证
7.getSession 取得当前session对象
8.getRequestURL 返回正在请求的路径
9.getHeaderNames 取得全部请求的头信息名称
10.getHeader 取得头信息内容
11.getMethod 取得用户提交方式
12.getServletPath 取得访问路径
13.getCountextPath 取得上下文资源路径

参数 头信息(自己操作系统 浏览器一些信息)
只要应用在HTTP

解决乱码问题
setCharacterEncoding
//设置接收编码
		request.setCharacterEncoding("utf-8");
接收请求参数
getParameter
接收多参
getParameterValues
URL地址重写
有长度限制
动态页面地址?参数名称1=参数内容1&参数名称2=参数内容2&... 
localhost:8080/class_javaweb1/jsp3_1/request3.jsp?name=zhangsan&password=123

接收全部请求参数getParameterNames 返回为枚举型

显示全部头信息
getHeaderNames
	<%
		Enumeration enu = request.getHeaderNames();
		while(enu.hasMoreElements()){
			String headname = (String)enu.nextElement();
			String headvalue = request.getHeader(headname);
	%>
			<%=headname %>-->
			<%=headvalue %><br >
	<%
		}
	%>

	<%
		String method = request.getMethod();//数据传输方法
		String ip = request.getRemoteAddr();//IP地址
		String path = request.getServletPath();//访问路径
		String contextpath = request.getContextPath();//路径上下文路径
	%>
			method:<%=method %>
			ip:<%=ip %>
			<%=path %>
			<%=contextpath %>
response对象
对客户端的请求进行回应
方法
1.addCookie 客户端增加cookie
2.setHeader 设置回应头信息
3.setRedirect 页面跳转
刷新头信息 定时刷新
setHeader(“refresh”,1)
定时跳转
静态
<meta http-equiv="refresh" content="3;URL=request1.html">
动态
response.setHeader("refresh", "5;URL=request1.html");
forward服务器跳转 跳转后地址不会改变
response.sendRedirect客户端跳转 跳转后改变地址 (a标签)
Cookie
让服务器端的程序能将一些只须保存在客户端 减少服务器的负载 安全性差
Cookie 实例化对象
getName 名字
getCValue 内容
setMaxAge 设置保存时间

session对象 表示会话 区分不同的访问对象
getId 取得会话
getCreationTime 创建时间
getLassAccessedTime 最后一次操作时间
isNew 是否是新用户
invalidate 让session失效
getAttributeNames 得到全部属性名称
登录注销
判断session值是否存在 存在能操作 不存在返回登陆

Application对象
getRealPath 得到虚拟目录对应的绝对路径
getAttributeNames 得到所有属性名的名称
getContextPath取得当前虚拟路径的名称

第一个/表示前面的路径 后面加的东西会拼在该路径后

String path = application.getRealPath("/");
也可以通过this.getServletContext替代
String path = this.getServletContext().getRealPath("/");
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
JSPJava Server Pages)是一种基于Java语言的服务器端网页开发技术,其中包括九大内置对象四大作用域。 九大内置对象是指在每一个JSP页面中,系统自动为开发者创建的九个对象,分别是: 1. request对象:用于获取HTTP请求的信息,如请求参数、请求头等。 2. response对象:用于设置HTTP响应的信息,如设置返回的内容、重定向等。 3. out对象:用于向客户端输出内容,可以通过该对象在页面中生成动态内容。 4. session对象:用于存储用户的会话信息,可以在不同的页面和请求之间共享数据。 5. application对象:用于存储全局的应用程序数据,可供所有用户访问。 6. config对象:用于获取当前JSP页面的配置信息,如JSP的初始化参数等。 7. page对象:代表当前JSP页面本身,可以用于调用页面的方法或属性。 8. exception对象:用于处理JSP页面中的异常,可以获取异常的相关信息。 9. pageContext对象:包含了对其他八个内置对象的引用,可用于简化代码的编写。 四大作用域是指在JSP中定义的存储数据的范围,分别是: 1. page作用域:数据的作用范围限定在当前JSP页面,即页面级别的作用域。 2. request作用域:数据的作用范围限定在一次HTTP请求与响应过程中,可供同一请求中的不同页面共享。 3. session作用域:数据的作用范围限定在用户的整个会话过程中,可供不同请求和页面共享。 4. application作用域:数据的作用范围限定在整个Web应用程序中,可供所有用户和所有请求共享。 通过合理的使用这九大内置对象四大作用域,可以方便地处理页面间的数据传递和数据共享,提高JSP网页开发的效率和灵活性。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值