尚硅谷Java-web学习:Sevlet 2 - ServletConfig类

二、ServletConfig类

ServletConfig类从类名上来看,就知道是Servlet程序的配置信息类。

        Servlet程序和ServletConfig对象都是由Tomcat负责创建,我们负责使用。ServletConfig是在init()方法的对象。

        Servlet程序默认是第一次访问的时候创建,ServletConfig是每个Servlet程序创建时,就创建一个对应的ServletConfig对象。

1)ServletConfig类的三大作用

1.可以获取Servlet程序的别名servlet-name的值

2.获取初始化参数init-param

        先配置web.xml: 在<servlet></servlet>便签中(<servlet-name>标签后)配置(可配置多个):

3.获取ServletContext对象

2)web.xml和Servlet程序源码

<!-- servlet 标签给 Tomcat 配置 Servlet 程序 -->
<servlet>
	<!--servlet-name 标签 Servlet 程序起一个别名(一般是类名) -->
	<servlet-name>HelloServlet</servlet-name>
	<!--servlet-class 是 Servlet 程序的全类名-->
	<servlet-class>com.atguigu.servlet.HelloServlet</servlet-class>
	<!--init-param 是初始化参数-->
	<init-param>
		<!--是参数名-->
		<param-name>username</param-name>
		<!--是参数值-->
		<param-value>root</param-value>
	</init-param>
	<init-param>
		<!--是参数名-->
		<param-name>url</param-name>
		<!--是参数值-->
		<param-value>jdbc:mysql://localhost:3306/project1</param-value>
	</init-param>
</servlet>
<!--servlet-mapping 标签给 servlet 程序配置访问地址-->
<servlet-mapping>
	<!--servlet-name 标签的作用是告诉服务器,我当前配置的地址给哪个 Servlet 程序使用-->
	<servlet-name>HelloServlet</servlet-name>
	<!--
		url-pattern 标签配置访问地址
		/ 斜杠在服务器解析的时候,表示地址为:http://ip:port/工程路径
		/hello 表示地址为:http://ip:port/工程路径/hello
	-->
	<url-pattern>/hello</url-pattern>
</servlet-mapping>

@Override
public void init(ServletConfig servletConfig) throws ServletException{
	System.out.println("2、init初始化方法");
	//1、可以获取 Servlet 程序的别名 servlet-name 的值
    System.out.println("HelloServlet程序的别名是:" + servletConfig.getServletName());
    //2、获取初始化参数 init-param
    System.out.println("初始化参数username的值是:" + servletConfig.getInitParameter("username"));
    System.out.println("初始化参数url的值是:" + servletConfig.getInitParameter("url"));
    //3、获取 ServletContext 对象
    System.out.println(servletConfig.getServletContext());
}

【注意】重写init方法时,一定要调用父类的init(ServletConfig)操作

猜你喜欢

转载自blog.csdn.net/weixin_56264090/article/details/127734783
今日推荐