Servlet-3

ServletConfig

ServletConfig是个接口,该接口是用来描述Servlet的基本信息的。

以下是此接口中的方法:

1.getServletName()

返回servlet的名称,全类名(带着包的类名,如果已经起了名字,返回的是你自己起的类名,而不是全路径名)。

代码如下:

System.out.println("config:" + servletConfig.getServletName());

输出结果:

config:com.southwind.servlet.MyServlet

2.getInitParameter(String key)

获取init参数的值

代码如下:

System.out.println(servletConfig.getInitParameter("username"));

输出结果:

admin

3.getInitParameterNames()

返回所有initParamter的name值,一般用作遍历初始化参数

代码如下:

  Enumeration<String> enumeration = servletConfig.getInitParameterNames();
        while (enumeration.hasMoreElements()) {
            String element = enumeration.nextElement();
            System.out.println(servletConfig.getInitParameter(element));
        }

输出结果:

1234556
super
admin

4.getServletContext()

返回ServletContext对象,他是Servlet的上下文,整个Servlet的管理者。

(1)getContextPath()

获取此处的路径值
在这里插入图片描述

(2)getServerInfo():

获取当前服务器版本

(3)servletContext.getInitParameter(String key)

获取init参数的值(context里的)

整合servletContext代码如下:

    ServletContext servletContext = servletConfig.getServletContext();
    System.out.println(servletContext.getContextPath());
    System.out.println(servletContext.getServerInfo());
    System.out.println("context:" + servletContext.getInitParameter("username"));

输出结果:

/test
Apache Tomcat/9.0.50
context:all

ServletConfig和ServletContext的区别:

ServletConfig作用域某个Servlet实例,每个servlet都有对应的ServletConfig;
ServletContext作用域整个web应用,一个web应用对应一个ServletContext,
多个Servlet实例对应一个ServletContext; 一个是局部对象,一个是全局对象。

xml配置如下:

<?xml version="1.0" encoding="UTF-8"?>
<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">
	    <context-param>
	        <param-name>username</param-name>
	        <param-value>all</param-value>
	    </context-param>
	     <!-- 以上是context配置-->
	    <!-- ------------------------------------------------------- -->
	   <!-- 以下是servlet配置-->
	    <servlet>
	<!-- 可以自定义名字 -->
	        <servlet-name>demo3</servlet-name>
    <!-- 这是Java文件的完整路径 -->
	        <servlet-class>com.southwind.servlet.MyServlet</servlet-class>
	<!--getInitParameter的配置-->
	        <init-param>
	            <param-name>username</param-name>
	            <param-value>admin</param-value>
	        </init-param>
	        <init-param>
	            <param-name>password</param-name>
	            <param-value>1234556</param-value>
	        </init-param>
	        <init-param>
	            <param-name>type</param-name>
	            <param-value>super</param-value>
	        </init-param>
	    </servlet>
	
	    <servlet-mapping>
	    <!--与 <servlet-name> 名字一样-->
	        <servlet-name>demo3</servlet-name>
	    <!--别忘记”/“,这个就是访问的时候输入的东西-->
	        <url-pattern>/demo3</url-pattern>
	    </servlet-mapping>
    </web-app>
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值