zoukankan      html  css  js  c++  java
  • Servlet的几个关键知识点

    1、ServletConfig 

      ServletConfig是Servlet的配置文件。对应于web.xml中的<servlet></servlet>标签。ServletConfig是由java提供的一个接口,其实现类是由tomcat提供。

    其API有:

    String getServletName();//获取<servlet-name>中的内容
    ServletContext getServletContext();//获取Servlet上下文对象
    String getInitParameter(String name)//通过名称获取指定初始化参数的值
    Enumeration getInitParameterNames()//获取所有初始化参数的名称

    2、ServletContext 

      一个项目只有一个ServletContext,相当于<web-app></web-app>标签。可以在不同的Servlet中获得这个唯一的对象,可以给多个Servlet传递数据。tomcat启动时创建,在tomcat关闭时才销毁。

      获取公共初始化参数,为所有的Servlet准备。而<servlet></servlet>中的<init-param></init-param>是为当前Servlet准备的  

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

       获取资源路径:  

    //把相对路径变成真实路径
    String path = this.getServletContext().getRealPath("相对路径");
    //获取资源路径后,在创建输出流
    InputStream in = this.getServletContext().getResourceAsStream("/index.jsp");
    //获取当前路径下所有的资源路径
    Set<String> paths = this.getContext().getResourcePaths("/WEB-INF");

    3、Servlet

      3.1、Servlet与线程安全

        线程安全就是多线程访问同一段代码不会产生不同的结果,编写线程安全的代码是依靠线程同步。Servlet不是线程安全的,工作效率高。所以不要在Servlet中创建成员变量,创建局部变量即可。如果创建成员变量,那么它可以是无状态的(不保存数据)。可以创建有状态的成员(保存数据),那么他必须是只读的。防止一个线程执行读操作,一个线程执行写操作。

      3.2、服务器启动时就创建Servlet

        <load-on-startup>0</load-on-startup> 非负整数,越小执行优先级越高

    <servlet>
        <servlet-name></servlet>
        <servlet-class></servlet-clss>
        <load-on-startup>0</load-on-startup>
    </servlet>
    <servlet>
        <servlet-name></servlet>
        <servlet-class></servlet-clss>
        <load-on-startup>1</load-on-startup>
    </servlet>
    

      3.3<url-pattern>

        <url-pattern>是<servlet-mapping>的子元素。用来指定Servlet的访问路径。以"/"开头 

      

      

      

  • 相关阅读:
    PTA 5-3 树的同构 ——理解递归
    停车管理系统
    两个有序链表序列的合并 (15分)
    lua 面向对象笔记 继承 和 组合
    二叉树高度计算,判定是否为平衡二叉树
    会用git的重要性,记工作中使用git reset 代码丢失的教训
    #include <bits/stdc++.h> 万能头文件
    C++中类的静态变量成员
    C++创建对象加括号和不加括号的区别
    deepin(深度系统)安装微信 qq
  • 原文地址:https://www.cnblogs.com/ckui/p/5994677.html
Copyright © 2011-2022 走看看