Servlet获得Http请求,GET/POST

Servlet获得Http请求 Http请求信息格式 请求行(方法提交方式,URI,Http协议版本) GET方式提交:URI会包含查询字符串 POST方式提交:URI不会包含查询字符串

请求头 Host:IP地址:端口号 User-Agent:用户网页浏览器类型 Accept:请求提交的文件包含类型 Keep-Alive:保持连接时间 空行(空格) 消息体 POST提交方式特有,包含查询字符串 get与post的区别 提交数据类型 get:文本信息 post:文本信息,二进制文件 提交数据长度 get:不超过255个字符 post:无限制 提交数据可见性 get:作为URL地址的一部分,显示在浏览器地址栏 post:作为请求的消息体,不可见 提交数据缓存 get:缓存在浏览器URL历史状态中 post:不会被浏览器缓存 获得请求信息 请求头 getMethod():获得请求提交方法 getRequestURI():获得URI资源(仅端口号后面的部分内容,不包括协议名、主机名、端口号) getRequestURL():获得URL资源 getQueryString():获得请求URL后面的查询字符串 getContextPath():获得请求URI资源上下文路径 getServletPath():获得Servlet的映射路径(如/ccb.do) 请求行 getHeader("参数"):获取请求行消息类型 User-Agent:浏览器版本 Host:访问IP地址 Keep-Alive:连接时间(生存时间) 消息体 getParameter(parameterName)获得表单参数的值 getParameterValues(parameterName)获得同名表单参数的值 文件上传 原理:将文件在表单中以二进制流方式装入提交信息传送至Web服务器 操作步骤 将表单传输方式设置为二进制流enctype="multipart/form-data" HttpServletRequest对象调用getInputStream()获得请求输入流 Servlet解析流,通过HttpServletResponse的对象调用getOutputStream(),持久化为对应类型文件 请求转发 原理:客户端只发一次请求,服务器自动将新连接转接到用户想要的位置,最后断开连接 request.getRequestDispatcher("文件路径或URL")获得对话 转发 response.forward(ServletRequest,ServletResponse)转发完成服务器关闭连接,仅包含转接后内容 response.include(ServletRequest,ServletResponse)转发完成保持服务器连接,包含转接前和转接后内容 可使用request.setAttribute()和request.getAttribute()获得请求作用域 与请求重定向的区别 请求重定向使用HttpServletResponse的方法;内部转发使用HttpServletRequest的方法 请求重定向客户端向服务器发送了2次请求,由客户端实现; 内部转发客户端只发送1次请求,转发过程由服务器端实现 请求重定向URL地址显示的是第二次请求的地址,无法获得请求作用域;内部转发URL地址显示的是服务器URL地址,可获得请求作用域存取对象

时间: 2024-10-18 17:11:53

Servlet获得Http请求,GET/POST的相关文章

Servlet处理get请求时的中文乱码问题

我们都知道,使用Servlet处理get请求时,如果get请求的参数中有中文,直接接收会是乱码,这个时候我们使用类似下面的语句来处理乱码: 12345 String name = request.getParameter("name");System.out.prinlnt(name); // 乱码// 处理乱码name = new String(name.getBytes("ISO8859-1"),"UTF-8");System.out.pri

servlet和http请求

1.servlet servlet是和平台无关的服务器组件,可以交互式的来浏览和修改数据,生成动态的web内容.它运行于 servlet容器中2.servlet容器 servlet容器负责servlet和客户的通信和调用servlet方法. servlet和客户通信采用“请求/相应”模式.3.创建servlet,及其工作原理 (1)创建一个HelloServlet.java类,实现Servlet接口,实现接口方法 init() service(); getServletConfig(); get

Servlet学习教程(二)----Servlet容器处理请求过程图解

上篇文章大致介绍的请求的流转,本文主要是详细介绍一下容器处理请求的过程. 第一步,用户点击一个链接指向一个servlet,而不是静态页面. 第二步,容器可以分辨出请求指向servlet,所以容器会产生两个对象: 1.HttpServletRequest 2.HttpServletResponse 第三步,容器对请求的URL根据配置找到对应的servlet,为这个请求创建或者分配一个线程,并将请求和响应对象传递给这个Servlet线程. 第四步,容器会调用Servlet的service方法,根据请

servlet的同步请求异步请求以及请求转发与重定型的区别

在javaWeb阶段,前端页面发送请求有两种: 1.同步请求 2.异步请求 同步请求与异步请求的区别是:同步请求跳转界面,异步请求只传递数据,不会跳转界面 (即使用同步请求,servelt响应的是一个界面,前台需要加载这个新的界面的图片样式脚本等诸多资源,而是用异步请求的话,只传递数据,不会刷新资源) 做一个简单的案例: 1.新建一个页面login.jsp <%@ page contentType="text/html;charset=UTF-8" language="

2016.5.9(使用servlet处理HTTP请求)

Servlet接受请求信息 HttpServletRequest对象主要用于获取由客户端发送过来的请求头.参数.文件.数据等.Servlet存在的主要目的就是处理请求 GET/POST提交方法 浏览器向Web服务器发送HTTP请求 用户在网页上点击一个超连接 用户提交在网页上填写好的表单 用户在浏览器地址栏中输入URL地址并回车 默认情况下都是使用HTTP协议的GET方法提交请求 定制浏览器行为 <FORM name='loginForm' method='POST' action='/logi

Servlet重定向和请求转发

设置请求重定向 1.可以选择别的服务器端程序来处理请求 2.把请求重定向到一个完全不同的URL上 设置自动刷新和等待页 response.setHeader("Refresh","time;URL=url"); 客户端浏览器向服务器发送请求方式 1.浏览器输入URK网址(GET方法) 2.点击超链接(GET方法) 3.点击提交表单(GET或POST方法) get方法和post方法区别 一.提交数据类型 GET() 文本 POST() 文本.二进制文本 二.提交数据长

Servlet容器如何处理请求资源路径

1.. 什么是请求资源路径 在地址栏中输入的请求地址中,端口号之后的部分都是请求资源路径.紧跟端口号的是部署到Web服务器上的应用名(appName),紧跟应用名的则是具体的应用内的组件路径. 2. Web服务器对请求地址的处理过程 浏览器依据地址中的IP和端口号与Web服务器建立连接,服务器会获取到请求资源路径信息.根据端口号后面的应用名找到服务器上对应的应用.默认情况下容器会认为应用名后面的是一个Servlet,所以回到web.xml文件中所有是否有与该值匹配的<url-pattern>,

利用java 反射机制来实现一个servlet处理多种请求

如果我们想在一个servlet中处理多种请求(比如新闻的添加.删除),简单的可以在jsp提交表单的action路径中添加一个键值对,然后再servlet中接收后根据不同的值来调用不同的方法. jsp端 1 <form action="newsServlet?method=add" method="post"> 2 <input type="text" ..> 3 <input type="submit&qu

Servlet的客户端请求

以下内容引用自http://wiki.jikexueyuan.com/project/servlet/client-request.html: 当浏览器请求网页时,它会向Web服务器发送大量信息,这些信息不能被直接读取,因为这些信息是作为HTTP请求头的一部分行进的. 以下是来自浏览器端的重要的头信息,会在Web编程中频繁的使用: 头信息 描述 Accept 这个头信息指定浏览器或其他客户端可以处理的MIME类型.值image/png或image/jpeg是最常见的两种可能值. Accept-C