javaweb内置对象request,response,out,session,Application等

JSP内置对象是一些不用声明,也不用像一般的java代码一样需要用new去获取实例的对象,这些对象可以直接在JSP页面的脚本部分使用。

一、request对象

 1.response和request对象是JSP的内置对象中比较重要的两个,这两个对象提供了对服务器和浏览器通信方法的控制,在JSP中,内置对象request封装了用户提交的信息,即使用HTTP协议处理客户请求时,表单提交的数据就存放在request对象中。

        request对象的常用方法:

        (1)String getParameter(String name)

        根据键去获取request中存放对象的值,参数name就是键。

        (2)String[] getParameterValues (String name):根据页面表单中的输入控件名称获取对应的多个值。

        (3)getRequestDispatchar(String location).forward(request,response)

        (4)getProtocol():获取客户向服务器提交信息所使用的通信协议,比如HTTP/1.1等。

        (5)getServerletPath():获取客户请求的JSP页面文件的目录

          (6)getContentLength(): 获取客户提交的整个信息的长度

        (7)getMethod():获取客户提交信息的方式,如:post或get

        (8)getHeader(String s): 获取HTTP头文件中由参数s指定的头名字的值。

        (9)getHeaderNames():获取头名字的一个枚举。

        (10)getHeaders(String s):获取头文件中指定头名字的全部值的一个枚举。

        (11)getReemoteAddr():获取用户的IP地址

        (12)getRemoteHost(): 获取客户机的名称(如果获取不到,就获取IP地址)

        (13)getServerName():获取服务器名称。

        (14)getServerPort():获取服务器端口号。

        (15)getParameterNames():获取客户提交的信息体部分中name参数值的一个枚举。

        进行请求转发,参数location为请求转发页面文件的URL地址。

        根据页面表单中的输入控件名称获取对应的多个值,一般用于获取复选框,复选列表框等输入控件,获取里面输入的多个值,参数name就是输入控件的名称。(关于post和get的区别,get是用来获取服务器上的信息,get将表单中的数据按照variable=value的形式,添加到action所指向的URL后面,并且两者使用“?”连接,而各个变量之间使用“&”连接;而post是用来向服务器上传递信息,post是将表单中的数据放在form的数据体中,按照变量和值对应的方式传递到action所指向的URL)

二:response对象:

1:response对象简介:当客户访问一个服务器的页面时,会提交一个HTTP请求,服务器收到请求时,返回HTTP响应。可以用response对象对客户的请求做出动态响应、向客户端发送数据。

2:response对象的常用方法:void response.sendRedirect(String location):response也可以重定向页面。在某些情况下,当响应客户时,需要将客户重新引导至另一个页面,参数是重定向的页面文件的URL地址。

讨论下request.getRequestDispatcher().forward()与response.sendRedirect()的区别:

(1):request.getRequestDispatcher().forward()是请求转发,前后页面共享一个request,而response.sendRedirect是重新定向,前后页面不是一个request。

(2)request.getRequestDispatcher().forward()是在服务器端运行,而response.sendRedirect是通过向客户浏览器发送命令来完成,所以request.getRequestDispatcher.forward()对于浏览器来说是透明的,而HttpServletResponse.sendRedirect()则不是。

三:session对象:

1:session对象简介:session本来的含义是指有始有终的一系列的动作/消息。例如:打电话从拿起电话拨号到挂断电话这中间的一系列过程可以称为一个session。

2:session的实现中采用cookie技术,session会在客户端保存一个包含session_id(session编号)的cookie;在服务器保存其他session变量,比如session_name等。当用户请求服务器时也把session_id一起发送到服务器,通过session_id提取所保存在服务器端的变量。当客户端禁用cookie时,session_id将无法传递,此时session失效。

3:对于session对象的理解:

(1)session对象存储有关用户绘画的所有信息;

(2)session对象的生命周期是用户的一次会话,当会话结束,session对象消亡

(3)session对象的类型是javax.servlet.http.HttpSession。

4:session对象的常用方法:

(1)void setAttribute(String name,Object value)

以键/值的方式,将一个对象的值存放到session中,参数name是键,标识一个对象的值保存在session中的时候给该值取的名字,参数是value是对象名。

(2)Object getAttribute(String name)

根据键去获取session中存放对象的值。参数name就是键,它来源于setAttribute方法中的参数name。

四:application对象:

1:application对象简介:当一个客户第一次访问服务器上的一个JSP页面时,JSP引擎创建一个和该客户相对应的session对象,当客户在所访问网站的各个页面之间浏览时,这个session对象都是同一个,直到客户关闭浏览器,这个session对象才被取消;而且不同客户的session对象是互不相同的。与session对象不同的是application对象。服务器启动后,就产生了这个application对象,当客户在所访问的网站的各个页面之间浏览时,这个application对象都是同一个,直到服务器关闭,这个application对象才被取消。与session对象不同的是,所有客户的application对象都是相同的,即所有的客户共享这个内置的application对象,JSP引擎为每个客户启动一个线程,这些线程共享这个application对象。

2:application对象的常用方法:

(1)public void setAttribute(String name,Object obj)

以键/值是方式,将一个对象的值存放到application中,参数name是键,表示一个对象的值保存在application中的时候给该值取的名字;参数obj是对象名。如果添加的两个对象的关键字相同,则先前添加对象被清楚。

(2)public Object getAttribute(String name)

根据键去获取session中存放对象的值,参数name就是键,它来源于setAttribute方法中的参数name。由于任何对象都可以天界到application对象中,因此,用该方法取回对象时,应强制转化为原来的类型。

五:out对象:

1:out对象简介:out对象是一个输出流,用来向客户端输出数据。

2:out对象的常用方法:

(1)out.print(Boolean),out.println(boolean):用于输出一个布尔值。

  (2)out.print(char),out.println(char):输出一个字符。

(3)out.print(double),out.println(double):输出一个双精度的浮点数。

(4)out.print(float),out.println(float):用于输出一个单精度的浮点数。

(5)out.print(long),out.println(long):用于输出一个长整型数据。

(6)out.print(String),out.println(String):用于输出一个字符串对象的内容。

javaweb程序设计基础(61-74页)

第一天  !  加油  坚持!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值