如何理解J2EE以及Servlet的生命周期
导读:本文共2442字符,通常情况下阅读需要8分钟。同时您也可以点击右侧朗读,来听本文内容。按键盘←(左) →(右) 方向键可以翻页。
摘要: J2EE是一个标准中间件体系结构,目的在于简化和规范分布式多层企业应用系统的开发和部署.典型的J2EE结构的应用程序有:客户层,表示逻辑层,业务逻辑层,企业信息系统层。servlet是一种独立于操作系统平台和网络传输协议的服务器端的Java应用程序,它用于扩展服务器的功能,可以生成动态的web页面。Servlet 的生命周期Servlet 的生命周期始于将它装入... ...
目录
(为您整理了一些要点),点击可以直达。J2EE是一个标准中间件体系结构,目的在于简化和规范分布式多层企业应用系统的开发和部署.
典型的J2EE结构的应用程序有:客户层,表示逻辑层,业务逻辑层,企业信息系统层。
servlet是一种独立于操作系统平台和网络传输协议的服务器端的Java应用程序,它用于扩展服务器的功能,可以生成动态的web页面。
Servlet 的生命周期
Servlet 的生命周期始于将它装入 Web 服务器的内存时,并在终止或重新装入 Servlet 时结束。
(1) 初始化
在下列时刻装入 Servlet:
如果已配置自动装入选项,则在启动服务器时自动装入
在服务器启动后,客户机***向 Servlet 发出请求时
重新装入 Servlet 时装入 Servlet 后,服务器创建一个 Servlet 实例并且调用 Servlet 的 init() 方法。在初始化阶段,Servlet 初始化参数被传递给 Servlet 配置对象。
(2) 请求处理
对于到达服务器的客户机请求,服务器创建特定于请求的一个“请求”对象和一个“响应”对象。服务器调用 Servlet 的 service() 方法,该方法用于传递“请求”和“响应”对象。service() 方法从“请求”对象获得请求信息、处理该请求并用“响应”对象的方法以将响应传回客户机。service() 方法可以调用其它方法来处理请求,例如 doGet()、doPost() 或其它的方法。
(3) 终止
当服务器不再需要 Servlet, 或重新装入 Servlet 的新实例时,服务器会调用 Servlet 的 destroy() 方法。
一个servlet样例(ServletSample.java)如下:
importjava.io.*;importjava.util.*;importjavax.servlet.*;importjavax.servlet.http.*;publicclassServletSampleextendsHttpServlet{//***步:扩展HttpServlet抽象类。publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{//第二步:重写doGet()方法StringmyName="";//第三步:获取HTTP请求信息java.util.Enumerationkeys=request.getParameterNames();while(keys.hasMoreElements());{key=(String)keys.nextElement();if(key.equalsIgnoreCase("myName"))myName=request.getParameter(key);}if(myName=="")myName="Hello";//第四步:生成HTTP响应。response.setContentType("text/html");response.setHeader("Pragma","No-cache");response.setDateHeader("Expires",0);response.setHeader("Cache-Control","no-cache");out.println("");out.println("");out.println("Justabasicservlet");out.println(""+myName+",thisisaverybasicservletthatwritesanHTMLpage.");out.println("ForinstructionsonrunningthosesamplesonyourWebSphere应用服务器,"+"openthepage:");out.println("http://your.server.name/IBMWebAs/samples/index.aspl");out.println("whereyour.server.nameisthehostnameofyourWebSphere应用服务器.");out.println("");out.flush();}}
Cookie的格式实际上是一段纯文本信息, 由服务器随着网页一起发送到客户端, 并保存在客户端硬盘中指定的目录的.
一个简单的例子
1. 写入Cookie --- writecookie.jsp
-------------------------------------------------------------
<%@pagecontentType="text/html;charset=ISO8859_1"%><%Cookie_cookie=newCookie("user_delfancom","delfan");_cookie.setMaxAge(30*60);//设置Cookie的存活时间为30分钟response.addCookie(_cookie);//写入客户端硬盘out.print("写Cookie完成");%>
2. 读取Cookie.jsp --- readcookie.jsp
-------------------------------------------------------------
<%Cookiecookies[]=request.getCookies();//将适用目录下所有Cookie读入并存入cookies数组中CookiesCookie=null;Stringsname=null;Stringname=null;if(cookies==null)//如果没有任何cookie out.print("noneanycookie");else{ out.print(cookies.length+""); for(inti=0;i{ sCookie=cookies[i];sname=sCookie.getName();name=sCookie.getValue(); out.println(sname+"->"+name+""); }}%>
以上介绍了Servlet的生命周期。
</div> <div class="zixun-tj-product adv-bottom"></div> </div> </div> <div class="prve-next-news">
如何理解J2EE以及Servlet的生命周期的详细内容,希望对您有所帮助,信息来源于网络。