内容整理自慕课网JAVA遇见HTML——JSP篇
out对象
- out对象是JspWriter类的实例,是向客户端输出内容常用的对象。
- 常用的方法有:
void println()
向客户端打印字符串void clear()
清楚缓冲区的内容,如果在flush之后调用会抛出异常void flush()
清除缓冲区
request对象
- 客户端的请求信息被封装在request对象中,通过它才能了解到客户端的需求,然后做出响应。它是HttpServletRequest类的实例。request对象具有请求域,即完成客户端的请求之前,该对象一直有效。
- 常用方法:
String getParameter(String name)
返回name指定参数的参数值String[] getParameterValues(String name)
返回包含参数name的所有值的数组void setAttribute(String,Object)
存储此请求中的属性object getAttribute(String name)
返回指定属性的属性值String getContentType()
得到请求体的MIME类型String getProtocol()
返回请求用的协议类型以及版本号String getServerName()
返回接受请求的服务器主机名
- 测试:
- index.jsp
- show
- request.jsp
- index.jsp
response对象
- response对象包含了响应客户请求的有关信息,但在JSP中很少直接用到它。它是HttpServletResponse类的实例。response对象具有页面作用域,即访问一个页面时,该页面内的response对象智能对这次访问有效,其它页面的response对象对当前页面无效
- 常用方法如下:
String getCharacterEncoding()
返回响应用的是何种字符编码void setContentType(String type)
设置响应的MIME类型PrintWriter getWriter()
返回可以向客户端输出字符的一个对象(注意PrintWriter是java.io.*下的类)sendRedirect(java.lang.String location)
重定向客户端的请求
转发与重定向的区别
- 转发:服务器行为,request.getRequest.Dispatcher().forward(req,resp);是一次请求,转发后请求对象会保存,地址栏的URL地址不会改变。
- 重定向:客户端行为,response.sendRedirect(),从本质上讲等同于两次请求,前一次的请求对象不会保存,地址栏的URL地址会改变