Java之servlet二 相关类说明

说明

   为了简明介绍相关类,参考tomcat5.5的文档,相关类不是最新的servlet相关类,基于早期相关类,没有那么复杂,更容易理解

相关类

  • Servlet
  • ServletRequest
  • ServletResponse
  • HttpServlet
  • HttpServletRequest
  • HttpServletResponse
  • ServletConfig
  • ServletContext
  • RequestDispatcher
  • HttpSession
  • Cookie

Servlet

Method Summary
 voiddestroy() 
 ServletConfiggetServletConfig() 
 java.lang.StringgetServletInfo() 
 voidinit(ServletConfig config) 
 voidservice(ServletRequest req, ServletResponse res) 

ServletRequest

Method Summary
 java.lang.ObjectgetAttribute(java.lang.String name) 
 java.util.EnumerationgetAttributeNames() 
 java.lang.StringgetCharacterEncoding() 
 intgetContentLength() 
 java.lang.StringgetContentType() 
 ServletInputStreamgetInputStream() 
 java.lang.StringgetLocalAddr() 
 java.util.LocalegetLocale() 
 java.util.EnumerationgetLocales() 
 java.lang.StringgetLocalName() 
 intgetLocalPort() 
 java.lang.StringgetParameter(java.lang.String name) 获取提交的参数值
 java.util.MapgetParameterMap() 
 java.util.EnumerationgetParameterNames() 
 java.lang.String[]getParameterValues(java.lang.String name) 
 java.lang.StringgetProtocol() 
 java.io.BufferedReadergetReader() 
 java.lang.StringgetRealPath(java.lang.String path) 
 java.lang.StringgetRemoteAddr() 
 java.lang.StringgetRemoteHost() 
 intgetRemotePort() 
 RequestDispatchergetRequestDispatcher(java.lang.String path) 
 java.lang.StringgetScheme() 
 java.lang.StringgetServerName() 
 intgetServerPort() 
 booleanisSecure() 
 voidremoveAttribute(java.lang.String name) 
 voidsetAttribute(java.lang.String name, java.lang.Object o) 
 voidsetCharacterEncoding(java.lang.String env) 

 ServletResponse

Method Summary
 voidflushBuffer() 
 intgetBufferSize() 
 java.lang.StringgetCharacterEncoding() 获取字符编码,如utf-8
 java.lang.StringgetContentType() 获取内容类型,如text/html;charset=utf-8
 java.util.LocalegetLocale() 
 ServletOutputStreamgetOutputStream() 
 java.io.PrintWritergetWriter() 
 booleanisCommitted() 
 voidreset() 
 voidresetBuffer() 
 voidsetBufferSize(int size) 
 voidsetCharacterEncoding(java.lang.String charset) 设置字符编码
 voidsetContentLength(int len) 
 voidsetContentType(java.lang.String type) 设置内容类型
 voidsetLocale(java.util.Locale loc) 

 GenericServlet

Method Summary
 voiddestroy() 
 java.lang.StringgetInitParameter(java.lang.String name) 获取初始化参数名对应的值
 java.util.EnumerationgetInitParameterNames() 获取初始化参数名列表,web.xml中servlet节点中init-param节点信息
 ServletConfiggetServletConfig() 同Servlet
 ServletContextgetServletContext() 
 java.lang.StringgetServletInfo() 同Servlet,自己实现,保护作者,版权等等
 java.lang.StringgetServletName() 获取servlet名,web.xml中servlet节点中servlet-name注册的名称
 voidinit() 
 voidinit(ServletConfig config) 
 voidlog(java.lang.String msg) 记录在logs文件夹中
 voidlog(java.lang.String message, java.lang.Throwable t) 
abstract  voidservice(ServletRequest req, ServletResponse res) 

HttpServlet

Method Summary
protected  voiddoDelete(HttpServletRequest req, HttpServletResponse resp) 
protected  voiddoGet(HttpServletRequest req, HttpServletResponse resp) 
protected  voiddoHead(HttpServletRequest req, HttpServletResponse resp) 
protected  voiddoOptions(HttpServletRequest req, HttpServletResponse resp) 
protected  voiddoPost(HttpServletRequest req, HttpServletResponse resp) 
protected  voiddoPut(HttpServletRequest req, HttpServletResponse resp) 
protected  voiddoTrace(HttpServletRequest req, HttpServletResponse resp) 
protected  longgetLastModified(HttpServletRequest req) 
protected  voidservice(HttpServletRequest req, HttpServletResponse resp) 
 voidservice(ServletRequest req, ServletResponse res) 

HttpServletRequest

Method Summary
 java.lang.StringgetAuthType() 
 java.lang.StringgetContextPath() 
 Cookie[]getCookies() 
 longgetDateHeader(java.lang.String name) 
 java.lang.StringgetHeader(java.lang.String name) 
 java.util.EnumerationgetHeaderNames() 
 java.util.EnumerationgetHeaders(java.lang.String name) 
 intgetIntHeader(java.lang.String name) 
 java.lang.StringgetMethod() 
 java.lang.StringgetPathInfo() 
 java.lang.StringgetPathTranslated() 
 java.lang.StringgetQueryString() 
 java.lang.StringgetRemoteUser() 
 java.lang.StringgetRequestedSessionId() 
 java.lang.StringgetRequestURI() 
 java.lang.StringBuffergetRequestURL() 
 java.lang.StringgetServletPath() 
 HttpSessiongetSession() 
 HttpSessiongetSession(boolean create) 
 java.security.PrincipalgetUserPrincipal() 
 booleanisRequestedSessionIdFromCookie() 
 booleanisRequestedSessionIdFromUrl() Deprecated. As of Version 2.1 of the Java Servlet API, use isRequestedSessionIdFromURL() instead.
 booleanisRequestedSessionIdFromURL() 
 booleanisRequestedSessionIdValid() 
 booleanisUserInRole(java.lang.String role) 

HttpServletResponse

Method Summary
 voidaddCookie(Cookie cookie) 
 voidaddDateHeader(java.lang.String name, long date) 
 voidaddHeader(java.lang.String name, java.lang.String value) 设置回复消息行键值
 voidaddIntHeader(java.lang.String name, int value) 
 booleancontainsHeader(java.lang.String name) 
 java.lang.StringencodeRedirectUrl(java.lang.String url) Deprecated. As of version 2.1
 java.lang.StringencodeRedirectURL(java.lang.String url) 
 java.lang.StringencodeUrl(java.lang.String url)  Deprecated. As of version 2.1
 java.lang.StringencodeURL(java.lang.String url) 
 voidsendError(int sc) 
 voidsendError(int sc, java.lang.String msg) 
 voidsendRedirect(java.lang.String location) 重定向
 voidsetDateHeader(java.lang.String name, long date) 
 voidsetHeader(java.lang.String name, java.lang.String value) 
 voidsetIntHeader(java.lang.String name, int value) 
 voidsetStatus(int sc) 
 voidsetStatus(int sc, java.lang.String sm) Deprecated As of version 2.1

ServletConfig

Method Summary
java.lang.StringgetInitParameter(java.lang.String name) 
java.util.EnumerationgetInitParameterNames() 
ServletContextgetServletContext() 
java.lang.StringgetServletName() 

ServletContext

Method Summary
 java.lang.ObjectgetAttribute(java.lang.String name) 
 java.util.EnumerationgetAttributeNames() 
 ServletContextgetContext(java.lang.String uripath) 
 java.lang.StringgetInitParameter(java.lang.String name) 
 java.util.EnumerationgetInitParameterNames() 
 intgetMajorVersion() 
 java.lang.StringgetMimeType(java.lang.String file) 
 intgetMinorVersion() 
 RequestDispatchergetNamedDispatcher(java.lang.String name) 
 java.lang.StringgetRealPath(java.lang.String path) 将资源相对路径转换成系统绝对路径
 RequestDispatchergetRequestDispatcher(java.lang.String path) 
 java.net.URLgetResource(java.lang.String path) 
 java.io.InputStreamgetResourceAsStream(java.lang.String path) 将资源转换成输入流
 java.util.SetgetResourcePaths(java.lang.String path) 
 java.lang.StringgetServerInfo() 
 ServletgetServlet(java.lang.String name) Deprecated. As of Java Servlet API 2.1
 java.lang.StringgetServletContextName() 
 java.util.EnumerationgetServletNames() Deprecated. As of Java Servlet API 2.1
 java.util.EnumerationgetServlets() Deprecated. As of Java Servlet API 2.0
 voidlog(java.lang.Exception exception, java.lang.String msg) Deprecated. As of Java Servlet API 2.1
 voidlog(java.lang.String msg) 
 voidlog(java.lang.String message, java.lang.Throwable throwable) 
 voidremoveAttribute(java.lang.String name) 
 voidsetAttribute(java.lang.String name, java.lang.Object object) 

RequestDispatcher

Method Summary
 voidforward(ServletRequest request, ServletResponse response) 转发
 voidinclude(ServletRequest request, ServletResponse response) 

HttpSession

      存在于服务器内存中

Method Summary
 java.lang.ObjectgetAttribute(java.lang.String name) 
 java.util.EnumerationgetAttributeNames() 
 longgetCreationTime() 
 java.lang.StringgetId() 
 longgetLastAccessedTime() 
 intgetMaxInactiveInterval() 
 ServletContextgetServletContext() 
 HttpSessionContextgetSessionContext() 
          Deprecated. As of Version 2.1, this method is deprecated and has no replacement. .
 java.lang.ObjectgetValue(java.lang.String name) 
          Deprecated. As of Version 2.2, this method is replaced by getAttribute(java.lang.String).
 java.lang.String[]getValueNames() 
          Deprecated. As of Version 2.2, this method is replaced by getAttributeNames()
 voidinvalidate() 主动是session失效
 booleanisNew() 
 voidputValue(java.lang.String name, java.lang.Object value) 
          Deprecated. As of Version 2.2, this method is replaced by setAttribute(java.lang.String, java.lang.Object)
 voidremoveAttribute(java.lang.String name) 
 voidremoveValue(java.lang.String name) 
          Deprecated. As of Version 2.2, this method is replaced by removeAttribute(java.lang.String)
 voidsetAttribute(java.lang.String name, java.lang.Object value) 
 voidsetMaxInactiveInterval(int interval) 设置单个生命周期

Cookie

 

Method Summary
 java.lang.Objectclone() 
 java.lang.StringgetComment() 
 java.lang.StringgetDomain() 
 intgetMaxAge() 获取生命周期
 java.lang.StringgetName() 
 java.lang.StringgetPath() 
 booleangetSecure() 
 java.lang.StringgetValue() 
 intgetVersion() 
 voidsetComment(java.lang.String purpose) 
 voidsetDomain(java.lang.String pattern) 
 voidsetMaxAge(int expiry) 
 voidsetPath(java.lang.String uri) 
 voidsetSecure(boolean flag) 
 voidsetValue(java.lang.String newValue) 
 voidsetVersion(int v) 

释义

  ◆ 线程同步

synchronized(this){
    iNum++;
    res.getWriter().println(iNum);
}

  ◆ 定向和转发

重定向HttpServletResponse.sendRedirect

转发RequestDispatcher.forward

:都是跳转到另外一个资源,不能有PrintWriter输出到客户端

:重定向可以跳转到任意的url,有两次请求(表现为有两次请求和回复,且浏览器中url为最后一个请求的url)

       转发只能跳转到同一Web应用下其他资源路径下,只有一次请求(表现为有一次请求和回复,且浏览器中url开始请求的url)

附录

Servlet API5.5文档

Servlet API8.5文档

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值