当前位置: 首页 > news >正文

浙江网站建设画册设计网站建设上

浙江网站建设画册设计,网站建设上,wordpress手机端响应慢,wordpress如何邀请人看servlet基础通过本教程#xff0c;我将尝试使您更接近Java Servlet模型。 在检查servlet规范中定义的类之前#xff0c;我将解释在开始开发Web应用程序之前需要了解的基本知识。 了解Java Servlet模型 首先#xff0c;不仅为基于请求和响应编程模型的规范的Web应用程序定义… servlet基础 通过本教程我将尝试使您更接近Java Servlet模型。 在检查servlet规范中定义的类之前我将解释在开始开发Web应用程序之前需要了解的基本知识。 了解Java Servlet模型 首先不仅为基于请求和响应编程模型的规范的Web应用程序定义Java Servlet模型。 但基本上它最常用于与HTTP协议交互因此从现在开始我们将不再在HTTP应用程序中使用servlet模型。 基本上Web应用程序应该是放置在Web上某个位置的应用程序并且可以通过网络对其进行访问。 如果您需要更多信息并更好地定义“什么是Web应用程序”则可以访问下一个链接 Web应用程序 。 如果我们要创建一个Web应用程序我们应该有一个Web服务器它可以是任何带有包含Web容器的HTTP服务器例如Tomcat。 HTTP服务器负责处理客户端请求安全性向客户端提供内容等服务但是HTTP服务器无法动态创建对客户端的响应他可以提供静态内容。 解决此问题的方法是Web容器。 容器能够托管Web应用程序HTTP服务器会将请求传递到将处理请求的Web容器。 通常每个服务器只有一个容器。 服务器上的所有Web应用程序都由此容器提供服务。 Web容器内部的所有通信都是通过Web容器接口实现的。 这意味着一个应用程序不能直接访问另一个应用程序。 同样一个应用程序内部的组件不能直接相互访问同一应用程序中组件之间的所有通信都是使用Web容器接口实现的。 这对于理解Web应用程序在Web容器中的工作方式非常重要它允许创建过滤器侦听器并允许使用Web容器的安全性功能。 战争应用结构 按照规范Java Web应用程序打包在war程序包中。 War软件包与jar软件包相同但是当Web容器在deploy文件夹中找到war文件时它将假定它是一个Web应用程序并尝试启动它。 在war软件包中我们有一个特殊的目录称为WEB-INF。 该文件夹的内容不直接提供给用户。 该文件夹包含文件夹类和lib我们可以在其中放置应用程序使用的类classes文件夹和其他jarlib文件夹。 这些文件夹的内容将由类加载器自动读取而无需对类路径进行任何其他设置。 此外该文件夹还包含web.xml文件称为部署描述。 如果Web应用程序仅包含jsp页面则不需要此文件但是如果应用程序需要具有servlet或过滤器则必须定义此文件。 Servlet生命周期 在servlet存在的过程中它经历了五个生命周期 装货 实例化 初始化 服务 破坏 加载是类加载器加载类的阶段。 每个Web应用程序将获得一个不同的类加载器实例这些实例将用于加载Web组件。 这允许在同一个容器中部署同一应用程序的两个版本并且每个应用程序都可以具有相同名称的类完整类名。 加载后Web容器将尝试实例化类即创建类的新实例。 通常每个Web组件仅创建一次但这取决于Web容器的行为在某些情况下可以将Web容器设置为在池中创建更多的组件类实例并使用池中的一个实例来服务请求。 当Web容器创建servlet的新实例时它将使用默认构造函数。 初始化是生命周期阶段在该阶段初始化servlet。 在此阶段中应该让servlet读取一些值并在servlet能够满足客户端请求之前执行一些附加的操作和步骤。 服务阶段是servlet生命周期其中servlet服务于客户端请求。 销毁阶段是Servlet生命的最后一个阶段发生在将Servlet从服务中删除时。 Servlet接口 如果我们想创建一个servlet那么应该做的就是实现Servlet接口。 该接口提供接下来的三种方法这些方法由容器调用 initServletConfig config在初始化期间调用 服务ServletRequest请求ServletResponse响应在服务请求期间调用 当从服务中删除servlet时调用destroy。 另外这个接口提供了两个辅助 方法 ServletConfig getServletConfig 字符串getServletInfo 在初始化期间可以获取ServletException。 在init方法中引发此异常将通知容器发生了一些错误并且容器将停止初始化并将Servlet实例标记为已准备好进行垃圾回收并且这不会导致调用destroy方法。 同样在服务方法期间可能会获取ServletException或UnavailableException。 此例外可以是临时的也可以是永久的。 在临时异常的情况下服务器将阻止对服务方法的调用一段时间但是在永久异常的情况下将调用destroy方法并且Servlet将准备进行垃圾回收并且以后对该Servlet的每次调用都将导致404响应。 GenericServlet类 GenericServlet类是javax.servlet包的一部分。 它是实现Servlet接口并创建不依赖平台的基本实现的抽象类。 此类介绍一种新方法 在初始化阶段由initServletConfig config方法调用的init ServletContext getServletContext提供对ServletContex的访问 String getInitParameterString name检索在应用程序描述符中为指定名称定义的servlet配置参数的值 枚举getInitParameterNames返回所有servlet初始化参数的枚举。 字符串getServletName返回servlet的名称。 如果我们扩展GenericServlet类而不是实现Servlet接口那么我们要做的只是实现服务方法所有其他方法都已经由抽象类实现了。 HttpServlet类 这也是类似于GenericServlet的抽象类但此类与平台无关。 它与HTML协议绑定并引入了仅与HTTP协议有关的新方法。 每个新方法都负责处理特定HTTP方法的客户端请求。 doXxx方法 doGetHttpServletRequest请求HttpServletResponse响应处理获取请求 doPostHttpServletRequest请求HttpServletResponse响应处理发布请求 doOptionsHttpServletRequest请求HttpServletResponse响应处理HTTP选项请求 doPutHttpServletRequest请求HttpServletResponse响应处理HTTP放置请求 doDeleteHttpServletRequest请求HttpServletResponse响应处理HTTP删除请求 doHeadHttpServletRequest请求HttpServletResponse响应处理HTTP Head请求 doTraceHttpServletRequest请求HttpServletResponse响应处理HTTP跟踪请求。 ServletContext接口 ServletContext接口是API可用于访问有关应用程序的信息。 每个应用程序都是在自己的上下文中执行的因此此接口可提供对该信息的访问。 该接口的实现由服务器供应商提供我们对具体实现不感兴趣。 部署应用程序时容器将首先创建ServletContext实现类并用应用程序描述符提供的数据填充它。 我们可以将此接口内的方法分为几组 访问上下文属性的方法 Object getAttributeString name从上下文中检索对象 枚举getAttributeNames检索属性名称 void removeAttributeString name从上下文中删除属性 setAttributeString nameObject value将新对象添加到上下文中并通过指定的名称绑定它。 如果具有指定名称的对象已经存在它将被重载。 获取上下文信息的方法 字符串getServletContextName检索由display-name在应用程序描述符中定义的值如果不存在则返回null。 String getRealPathString path指定资源的上下文相关路径如果将应用程序部署为WAR如果未在文件夹中爆炸则为null。 设置getResourcesPathsString path在指定的部分路径内检索文件仅一级 ServletContext getContextString appURL检索部署在同一服务器上的另一个应用程序的ServletContex。 网址必须以/开头 访问静态资源的方法 URL getResourceString path检索由path指定的资源的URL。 路径必须以“ /”开头 InputStream getResourceAsStreamString path检索指定资源的InputStream。 路径可以是上下文相关的。 String getMimeTypeString path返回资源的mie类型。 获取请求分配器的方法 RequestDispatcher getRequestDispatcherString path为指定资源返回RequestDispatcher如果资源不存在则返回null。 RequestDispatcher getNamedDispatcherString name为部署描述符内的命名资源返回RequestDispatcher。 访问上下文初始化参数的方法 String getInitParameterString name检索部署描述符中定义的指定参数的值如果不存在则返回null。 枚举getInitParameterNames在应用程序部署描述符中定义的参数名称列表。 上下文属性是应用程序范围的属性这意味着所有客户端共享相同的属性一个客户端进行的属性更改对其他所有客户端都是可见的。 ServletConfig接口 这是API提供用于访问在部署描述符中定义的信息的方法。 具体 对象由servlet容器创建并在初始化阶段提供给servlet。 该接口定义了以下方法 String getInitParameterString name获取为具有指定名称的servlet定义的init参数的值如果没有这样的参数则为null。 枚举getInitParameterNames检索servlet初始参数名称的枚举。 ServletContext getServletContext检索Servlet上下文。 字符串getServletName检索在web.xml中指定的servlet名称 如您所见ServletConfig仅提供用于读取init参数的方法而没有用于更改或添加新init参数的方法因为它们无法更改或添加。 Servlet部署说明 如果要使用servlet则需要在部署描述符中定义它们。 servletdescriptionThis is a servlet/descriptiondisplay-nameFirst Servlet/display-nameservlet-nameFirstServlet/servlet-nameclassba.codecentric.scwcd.FirstServlet/classinit-paramparam-namefirstParam/param-nameparam-valuevalue/param-value/init-param/servletservlet-mappingservlet-nameFirstServlet/servlet-nameuri-pattern/FirstServlet/uti-pattern/servlet-mapping 在servlet标签内部我们定义了servlet在servlet标签内部我们可以使用init param标签定义初始化参数这些参数将在初始化阶段作为ServletConfig对象的一部分发送给servlet。 并使用servlet映射标记定义uri模式该模式将用于激活指定的servlet。 同样在本教程中我谈到了ServletContext并且提到了上下文参数。 这些参数也使用上下文参数标签在部署描述中定义。 context-paramparam-namecontextParameter/param-nameparam-valuevalue/param-value/context-param 参考 Igor Madjeric博客上来自我们的JCG合作伙伴 Igor Madjeric的有关Servlet的基础知识 。 翻译自: https://www.javacodegeeks.com/2012/11/basics-about-servlets.htmlservlet基础
http://www.zqtcl.cn/news/551717/

相关文章:

  • 用网站做淘客怎么做网站建设在电访销售话术
  • 做电影网站赚了几百万动画制作流程
  • 怎么做企业的网站首页wordpress 主机迁移
  • 网站常见问题网页设计代码开头
  • 聊城网站推广品牌推广计划描述
  • 池州网站制作优化有没有专业做特产的网站
  • wordpress采集站源码wordpress好用的会员插件
  • 寿县城乡建设局网站青岛网站建设大全
  • 杭州做网站的好公司哪家好做影视网站侵权吗
  • 自助建站网站seo公司想学编程做网站
  • 网站空间备案要多久花木公司网站源码
  • 高端求职网站排名ftontpage如何做网站
  • 音乐网站开发技术河南省住房和城乡建设门户网站
  • 吉安微信网站弋阳县建设工程网站
  • 网站建设自学建站视频教程哈尔滨全国网站建设
  • 网站建设基础培训网站架构拓扑图
  • 网站开发价格预算成都必去的地方排行榜
  • 鹤岗做网站企业建立网站主要包括那些流程
  • 如何进网站出口外贸是做什么的
  • 网站制作北京网站建设公司哪家好一个人 建设网站
  • 百度网站是什么阿里云免费网站建设
  • 网站建设平台源码攻击网站步骤
  • 注册了网站之后怎么设计深圳开发app
  • 国外网站搭建平台移动互联网公司
  • 做网络私活的网站网站开发的人
  • 数据分析网站开发四川手机网站设计方案
  • 什么是网络营销的方法莱州网站建设关键字排名优化网络托管微信代运营
  • 雅虎网站收录提交入口怎么看网站谁做的
  • 青浦专业做网站免费网站软件大全
  • joomla 网站图标六安市城市建设档案馆网站