通过ServletContext实现Servlet之间共享数据

来源:互联网 发布:熊猫加速器mac版 编辑:程序博客网 时间:2024/05/20 12:51

ServletContext 是应用级域对象。

web.xml文件:


<?xml version="1.0" encoding="UTF-8"?><web-app version="3.0"    xmlns="http://java.sun.com/xml/ns/javaee"    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">  <servlet>  <!-- 定义Sevlet:给Servlet取个名字 -->    <servlet-name>ServletDemo</servlet-name>    <servlet-class>com.neu.ServletDemo</servlet-class>  </servlet>  <servlet>    <servlet-name>ServletDemo2</servlet-name>    <servlet-class>com.neu.ServletDemo2</servlet-class>  </servlet>  <servlet-mapping>  <!-- 映射Servlet:给Servlet一个访问地址 -->    <servlet-name>ServletDemo</servlet-name>    <url-pattern>/hello</url-pattern>  </servlet-mapping>  <servlet-mapping>    <servlet-name>ServletDemo2</servlet-name>    <url-pattern>/servlet/ServletDemo2</url-pattern>  </servlet-mapping></web-app>

ServletDemo.java文件:


package com.neu;import java.io.IOException;import java.util.Enumeration;import javax.servlet.ServletConfig;import javax.servlet.ServletContext;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;public class ServletDemo extends HttpServlet {public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {ServletContext sc = getServletContext();sc.setAttribute("p", "ppp");response.getWriter().write("OK");}public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {doGet(request, response);}}

ServletDemo2.java文件:


package com.neu;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.ServletContext;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;public class ServletDemo2 extends HttpServlet {public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {ServletContext sc = getServletContext();String value = (String)sc.getAttribute("p");response.getWriter().write(value);}public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {}}

运行及结果:

运行:http://localhost:8080/ServletDemo/hello

结果:OK

运行:http://localhost:8080/ServletDemo/servlet/ServletDemo2

结果:ppp

0 0
原创粉丝点击