zoukankan      html  css  js  c++  java
  • ServletContex对象学习

    问题:

      不同的用户使用相同的数据

    解决:

      ServletContext对象

    特点:

      服务器创建

      用户共享

    作用域:

      整个项目内

    生命周期

      服务器启动到服务器关闭

    使用:

        1.获取SercvletContext对象

        //第一种

       ServletContext sc=this.getServletContext(); 

        //第二种

        ServletContext sc2=this.getServletConfig().getServletContext(); 

        //第三种

       ServletContext sc3=req.getSession().getServletContext(); 

      2.使用ServletContext对象完成数据共享

        //数据存储 

      sc.setAttribute(String name, Object value); 

        //数据获取

       sc.getAttribute("str") 返回的是Object类型 

        注意:

           不同的用户可以给ServletContext对象进行数据的存取。

           获取的数据不存在返回null

      3.获取项目中的web.xml文件中的全局配置数据

       sc.getInitParameter(String name); 根据键的名字返回web.xml中配置的全局数据的值,返回String类型。如果数据不存在返回null   

       sc.getInitParameterNames();返回键名的枚举 

     配合方式:注意 一组<context-param>标签只能存储一组键值对数据,多组可以声明多个  <context-param>进行存储。

       作用:将静态数据和代码进行解耦。

    <context-param>
        <param-name>name</param-name>
        <param-value>zhangsan</param-value>
    </context-param>

      4.获取项目webroot下的资源的绝对路径。

       String path=sc.getRealPath(String path);  获取的路径为项目根目录,path参数为项目根目录中的路径

      5.获取webroot下的资源的流对象。

       InputStream is = sc.getResourceAsStream(String path); 

      注意:
      此种方式只能获取项目根目录下的资源流对象,class文件的流对象需要使用类加载器获取。
      path参数为项目根目录中的路径

      6..显示目录下的资源

       Set<String> paths = sc.getResourcePaths(); 

  • 相关阅读:
    SAP一些学习网址
    Silverlight RIA Servcie 删除子对象实体提交错误的问题[解决]
    Clean up your BizTalk databases
    Silverlight RIA Service开发实战总结(一)
    Silverlight ToolKitAutoCompleteBox bug(Style bug)
    domaincontext load 回调
    数据驱动开发For Silverlight WCF RIA1.0 三步曲
    xpath 查询忽略大小
    代码重构之没有理由拒绝Lambda表达式
    离写出大师级代码只差这一步
  • 原文地址:https://www.cnblogs.com/vieta/p/10848488.html
Copyright © 2011-2022 走看看