• ServletContext的使用


    web容器在启动的时候,他会为每个web程序都创建一个对应的ServletContext对象,他代表了当前的web应用

    获取ServletContext的对象的三种方法

    // 第一种方式
    ServletContext con1 = this.getServletConfig().getServletContext();
    // 第二种方式
    ServletContext con2 = req.getSession().getServletContext();
    // 第三种方式
    ServletContext con3= this.getServletContext();

    共享数据     使用ServletContext 对象完成数据的共享

    数据存储:context.setAttribute(String name,Object value);

    数据获取:context.getAttribute(String name);

    代码A:

     

    代码B:(加了一步强转的操作)

     添加映射:

        <servlet>
            <servlet-name>setc</servlet-name>
            <servlet-class>com.guangtao.servlet.HelloServlet</servlet-class>
        </servlet>
        <servlet-mapping>
            <servlet-name>setc</servlet-name>
            <url-pattern>/setc</url-pattern>
        </servlet-mapping>
    
        <servlet>
            <servlet-name>getc</servlet-name>
            <servlet-class>com.guangtao.servlet.getValue</servlet-class>
        </servlet>
        <servlet-mapping>
            <servlet-name>getc</servlet-name>
            <url-pattern>/gets</url-pattern>
        </servlet-mapping>

    注意:

    •  在输入代码B的映射前得先运行代码A的映射路径,否则会出现null的情况
    •  如果在web.xml中配置多个servlet标签,web-app出现报错(一个标签并不会报错)
      • 原因:引入的版本与默认的版本不匹配。
      • 解决办法:在web.xml 的web-app头部加入一下配置即可
    <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
             version="4.0">
  • 相关阅读:
    poj2954
    bzoj1863
    bzoj2002
    bzoj1389
    [POJ3041] Asteroids(最小点覆盖-匈牙利算法)
    [POJ2594] Treasure Exploration(最小路径覆盖-传递闭包 + 匈牙利算法)
    [POJ2446] Chessboard(二分图最大匹配-匈牙利算法)
    [luoguP1266] 速度限制(spfa)
    [luoguP1186] 玛丽卡(spfa)
    [luoguP1027] Car的旅行路线(Floyd)
  • 原文地址:https://www.cnblogs.com/tisnk/p/14219594.html
Copyright © 2020-2023  润新知