• ServletConfig


    • String getServletName()  -- 获取当前Servlet在web.xml中配置的名字
    • String getInitParameter(String name) -- 获取当前Servlet指定名称的初始化参数的值
    • Enumeration getInitParameterNames()  -- 获取当前Servlet所有初始化参数的名字组成的枚举
    • ServletContext getServletContext()  -- 获取代表当前web应用的ServletContext对象

    在Servlet的配置文件中,可以使用一个或多个<init-param>标签为servlet配置一些初始化参数。

    当servlet配置了初始化参数后,web容器在创建servlet实例对象时,会自动将这些初始化参数封装到ServletConfig对象中,并在调用servlet的init方法时,将ServletConfig对象传递给servlet。进而,程序员通过ServletConfig对象就可以得到当前servlet的初始化参数信息。

    这样做的好处是:如果将数据库信息、编码方式等配置信息放在web.xml中,如果以后数据库的用户名、密码改变了,则直接很方便地修改web.xml就行了,避免了直接修改源代码的麻烦

    web.xml

    <servlet>
            <servlet-name>ServletConfigDemo1</servlet-name>
            <servlet-class>com.ServletConfigDemo1</servlet-class>
            <init-param>
                <param-name>name1</param-name>
                <param-value>value1</param-value>
            </init-param>
            <init-param>
                <param-name>name2</param-name>
                <param-value>value2</param-value>
            </init-param>
            <init-param>
                <param-name>encode</param-name>
                <param-value>utf-8</param-value>
            </init-param>
        </servlet>
     <servlet-mapping>
         <servlet-name>ServletConfigDemo1</servlet-name>
         <url-pattern>/ServletConfigDemo1</url-pattern>
     </servlet-mapping>

    java中的代码:

    public void doGet(HttpServletRequest request, HttpServletResponse response)
                    throws ServletException, IOException {
             response.setContentType("text/html;charse=UTF-8");
                PrintWriter out=response.getWriter();
                 ServletConfig config = this.getServletConfig();  //拿到init方法中的ServletConfig对象
        
              /*  // --获取当前Servlet 在web.xml中配置的名称(用的不多)
                String sName = config.getServletName();
             out.println("当前Servlet 在web.xml中配置的名称:"+sName);*/
                  
               // --获取当前Servlet中配置的初始化参数(只能获取一个)经常用到
               String value = config.getInitParameter("name2");
            out.println(value);
        
               /* // --获取当前Servlet中配置的初始化参数(全部获取)经常用到
                  Enumeration enumration = config.getInitParameterNames();
                 while(enumration.hasMoreElements()){
                  String name = (String) enumration.nextElement();
                  String value = config.getInitParameter(name);
             out.println(name+":"+value);
                  }*/
            }

  • 相关阅读:
    Jupyter notebook 读取文件的问题
    机器学习-数据清洗和特征选择
    机器学习-逻辑回归
    Java教程
    13.并发编程
    redis 实现
    CyclicBarrier介绍
    Future模式衍生出来的更高级的应用
    并发编程 futuretask
    整理POST请求方式
  • 原文地址:https://www.cnblogs.com/bulrush/p/5665332.html
Copyright © 2020-2023  润新知