java Web(3)

Servlet

  是运行在Web服务器或应用服务器上的Java程序
  在Web上创建动态内容的有效而强大的解决方案
  由容器来管理生命周期与Web服务器交互
  由Sun规范了其功能

Servlet部署:

  一个Servlet必须有三个名称:
  1:是Servlet的名称,
  2:是Servlet类的完整名称,
  3:是映射的逻辑名称

总结:

  Java Servlet是运行在Web服务器或应用服务器上的Java程序
  Servlet规范对Servlet功能进行了严格定义
  Servlet API与容器进行通讯
  Servlet的编码和部署需要在web.xml中进行注册
  Servlet的生命周期由4个阶段组成
  SevletConfig对象为Servlet提供初始化参数
  ServletContext对象属于整个Web应用程序

使用Servlet处理Http的响应

  HttpServletResponse对象用于操纵响应的HTTP头 

  setHeader()
  addHeader()
  setIntHeader()
  setDateHeader()
  containsHeader()
  setContentType()
  addCookie()

  重定项

  response.sendRedirect("http://127.0.0.1:8080/lovobook/bar.html");

使用Servlet处理Http的请求

  getMethod():获取HTTP的请求方法,例如GET、POST等
  getRequestURI():获取请求的URI资源
  getRequestURL():获取请求的URL,包含协议名、服务器名或IP、端口号和请求资源但不包括查询字符串参数
  getQueryString():获取请求URL后面的查询字符串
  getProtocol():获取HTTP的协议名和版本号
  getContextPath():获取请求URI资源的上下文路径
  getServletPath():获取Servlet的映射路径

  getParameter()获取表单元素

   request.getRequestDispatcher("/sucess.html").forward(request, response); 请求派发forward()方法意味着把请求和响应派发给别的资源后,就不会再去做任何处理了 

  request.getRequestDispatcher("/sucess.html").include(request, response); 请求派发include() 方法意味着请求别人帮助处理请求,但这并不是完全移交,只是暂时地把控制交给         别人 

Servlet响应总结

请求URL时HTTP发出了多个请求
状态码告诉浏览器发送的内容及格式状态
Servlet API与容器进行通讯
HttpServletResponse定义的常量来避免直接使用整数
在通过PrintWriter对象发送任何内容之前先调用 HttpServletResponse的setStatus()方法
为了让Servlet发挥最大的效能,HttpServletResponse对象用于操纵响应的HTTP头
getWrite()或者getOutputStream()方法传送文本或者二进制内容给客户端
sendRedirect方法实现重定向
HTTP响应头“Refresh”会根据时间来控制响应

Servlet请求总结

HttpServletRequest对象主要用于处理分析请求
默认情况下,使用HTTP协议的GET方法提交请求
HTML表单通过“method”属性使浏览器使用HTTP POST方法
GET/POST方法适用于不同场合
HttpServletRequest对象中最常用的方法是获取请求表单参数
HttpServletRequest对象也可以得到请求中参数的原始字节数据
重定向和请求派发之间最大的区别在于,重定向让客户端浏览器来完成,而请求派发是在服务器端做工作
HttpServletRequest可以把一个对象用名字绑定在请求范围内,并且进行访问和删除

   

原文地址:https://www.cnblogs.com/zxiaoyuer/p/7077855.html