Servlet生命周期

来源:互联网 发布:java语言返回值怎么用 编辑:程序博客网 时间:2024/04/29 21:06

3 Cookie

Cookie是Web服务器发送给客户端的一小段信息,客户端请求时,可以读取信息发送到服务器端。

Servlet API为使用Cookie而提供javax.servlet.http.Cookie。

Cookie类常用的方法如下:

(1) setMaxAge():设置Cookie的最大保存时间(以秒表示)

public void setMaxAge(int age)

(2) getMaxAge():返回Cookie的最大保存时间

public int getMaxAge()

4 Session

Servlet通信方法

Servlet运行一个称为ServletContext的环境,此环境描述了与Servlet关联的各种参数,一个Servlet只属于一个ServletContext。

1 Servlet与jsp页面通信

下面是UserServlet1中的doGet()方法中的部分代码:

String uid=request.getParameter("txtuserid");

ServletContext context=this.getServletContext();

context.setAttribute("userid", uid);

RequestDispatcher dispatcher=request.getRequestDispatcher("../x.jsp");

x.jsp部分代码:

<%

ServletContext context=this.getServletContext();

String userid=context.getAttribute("userid").toString();

%>

用户ID:${userid}

2 Servlet与Servlet通信

属于同一个应用程序的Servlet可以使用javax.servlet.RequestDispatcher接口的forward和include方法来共享数据。

forward()方法将HTTP请求从一个Servlet发送到其它Servlet。该请求包含传递到目标Servlet的URL和请求参数。

include方法可以接收Servlet以包括Servlet响应中的其他Servlet响应数据。接收客户端可以接收的对象,并将数据写入到response对象。

(1)forward():用于将请求从一个Servlet转发到同一个服务器上的另一个Servlet。语法为:

public void forward(ServletRequest request,ServletResponse response) throws ServletException,IOException

基中,request是客户端向Servlet发出的请求,response是Servlet对客户端作出的响应。

(2)include():用于包括另一个Servlet的内容。语法为:

public void include(ServletRequest request,ServletResponse response) throws IOException

其中,request是包含客户端请求的对象,response是包含Servlet响应的对象。

下面是UserServlet1中的doGet()方法中的部分代码:

String uid=request.getParameter("txtuserid");

ServletContext context=this.getServletContext();

context.setAttribute("userid", uid);

RequestDispatcher dispatcher=request.getRequestDispatcher("/servlet/UserServlet2");

Servlet上下文

Servlet上下文提供对应用程序中所有Servlet所共有的各种资源和功能的访问。Servlet上下文API用于设置应用程序中所有Servlet共有的信息。

Javax.servlet.ServletContext接口中用于处理上下文属性的方法如下:

1 getAttribute():返回Servlet上下文中对应属性名称的对象。若没有则返回null。

public Object getAttribute(String name)

其中,name是Servlet的属性名称。

2 setAttribute():将对象绑定到Servlet上下文中提供的属性名称。

public void setAttribute(String name,Object object);

其中,name指定属性名称,object表示要绑定的对象。

原创粉丝点击