servlet可以接收请求和响应数据的原理是什么?

servlet可以接收请求和响应数据的原理是什么?,第1张

Servlet在服务器里面的时候,能处理请求,这是因为服务器对Servlet接口进行了实现,他编写了这些接口的具体的实现方法和实现类,这就是为什么Servlet在服务器下可以处理请求。最常见的请求就是Http请求,也就是在浏览器里面经常看到的那种,大家一般说请求,指的就是Http请求。

Servlet是Java Servlet的简称,称为小服务程序或服务连接器,用Java编写的服务器端程序,具有独立于平台和协议的特性,主要功能在于交互式地浏览和生成数据,生成动态Web内容。

狭义的Servlet是指Java语言实现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类,一般情况下,人们将Servlet理解为后者。Servlet运行于支持Java的应用服务器中。

Servlet 是在服务器上运行的小程序。这个词是在 Java applet的环境中创造的,Java applet 是一种当作简汪单独文件跟网页一起发送的小程序,它通迹咐卜常用于在客户端运行,结果姿穗得到为用户进行运算或者根据用户互作用定位图形等服务。

从原理上讲,Servlet可以响应任何类型的请求,但绝大多数情况下Servlet只用来扩展基于HTTP协议的Web服务器。

一、jsp往 servlet 传 : 1.jsp页面毁卖添加标纤斗逗签 : <input type="text" name="test" /> 2 . servlet doPost方法中取:request.getParameter("test")二、servlet 往jsp 传1.servlet doPost方法中往session传值销咐:request.getAttrebute().getSession().put(key , value)2.jsp java代码取:<% request.getAttrebute().getSeesion().getString(key) %>

表单是HTML中使用最广泛的传递信息的手段。搞清楚Servlet与表单的交互,就在客户端与服务器之间架起了一座桥梁。Servlet使用HttpServlet类中的方法与表单进行交互。在HttpServlet类中有几个未完全实现的方法,你可以自己定义方法的内容,但是必须正确使用方法名称以使HTTP Server把客答腊户请求正确的映射到相应的函数上。

doHeader 用于处理HEADER请求

doGet 用于处理GET请求,也可以自动的支持HEADER请求

doPost 用于处理POST请求

doPut 用于处理PUT请求

doDelete 用于处理DELETE请求

HttpServlet的Service方法,指返当它接收到一个OPTIONS请求时,它会自动调用doOptions方法,当接收到一个TRACE请求时调用doTrace。DoOptions默认执行方式是自动决定什么样的HTTP被选择并返回哪个信息。

在使用这些方法时必须带两个参数。第一个包含来自客户端的数据HttpServletRequest。第二个参数包含客户端的相应HttpServletResponse。在我们的第一个例子中使用的是doGet方法,因为通过地址访问的话,对应的方式是GET。

一个HttpServletRequest对象提供请求HTTP头部数据,也允许获取客户端的数据。怎样获取这些数据取决于HTTP请求唯举饥方法。

不管何种HTTP方式,都可以用getParameterValues方法返回特定名称的参数值。

对于HTTP GET请求的方式,getQueryString方法将会返回一个可以用来解剖分析的参数值。

对于用HTTP POST,PUT和DELETE请求的方式,HttpServletRequest有两种方法可以选择:如果是文本数据,你能通过getReader的方法得到BufferedReader获取数据;如果是二进制数据,可以通过getInputStream方法得到ServletInputStream获取数据。

为了相应客户端,一个HttpServletResponse对象提供返回数据给用户的两个方法:一种是用getWriter方法得到一个PrintWriter,用于返回文本数据;另一种方法是用getOutputStream方法得到ServletOutputStream,用于返回二进制数据。在使用Writer或OutputStream之前应先设置头部(HttpServletResponse中有相应的方法),然后用Writer或OutputStream将相应的主体部分发给用户。完成后要关闭Writer或OutputStream以便让服务器知道相应已经结束。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12310140.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存