Java基础之servlet——response&request

request:请求:处理请求相关
response:响应:处理响应相关

什么是请求
	浏览器,访问服务器,
什么是响应
	服务器,反馈浏览器	

- 一、request:域对象(一次请求)

getParameter():获取单个数据(input框)
getParameterValues();获取多个数据(checkedbox)
getParameterMap():获取所有的参数	
	key:name值
	value:name对应的value值

获取请求头信息:
request.getHeader("")
获取请求方式:
request.getMethod();
获取项目路径:
getContextPath();


路径相关;
	内部路径;直接写资源
	相对:./ ../
	绝对:
		带主机和协议的路径(访问站外资源)
		不带主机和协议的路径(最常用的)
			/项目名/资源路径
  • 二、response对象:

    响应码(状态码):
    200 成功
    404:访问的资源不存在
    500:服务器代码有问题
    304:读缓存
    302:重定向

    常用方法:

    //设置编码
    	response.setContentType("text/html;charset=utf-8");
    	//回写数据
       		 response.getWriter().print("我已收到请求!!!");
    	getOutputStream():获取字节流 

注意:
两个流是互斥的 不能同时存在
自己写的:字符流
其他所有:字节流

**请求转发:
request.getRequestDispatcher("/hello.html").forward(request,response );
地址栏不变,页面发生跳转
如果发生了请求转发,还是一次请求

  • sendRedirect():重定向
    页面发生跳转
    地址栏要发生改变,两次请求

    请求转发和重定向的区别:
    1、重定向2次请求,请求转发1次请求
    2、重定向地址栏变化,请求转发地址栏不变
    3、重定向转发通过浏览器,请求转发通过服务器内部
    4、重定向可以访问站外资源(除开当前服务器以外),请求转发不能访问站外资源

    了解:

setHeader(); 设置响应头
	addHeader();添加响应头,如果有就覆盖 ,没有就添加

响应头:
	location:配合状态码 实现重定向
	refresh:刷新
	cookie:小饼干
	Content-Disposition:下载相关

//重定向
方式一:
sendRedirect():
方式二:
response.setStatus(302);
    response.setHeader("location", "/myServlet6");

//定时刷新
response.setHeader("refresh", "3;url=http://www.baidu.com");

猜你喜欢

转载自blog.csdn.net/qq_36095679/article/details/86640798
今日推荐