目录
3.ServletConfig和ServletContext对象的区别
1.ServletConfig对象
1.1ServletConfig对象是什么
ServletContext是javax.servlet包下的一个接口,又称上下文对象,是配置对象也是一个域对象;
当服务器启动时,会为服务器中的每一个web应用程序创建一个ServletContext对象;
在web应用中的servlet要想实现资源的共享,可以通过ServletContext来完成;
1.2ServletConfig对象里的方法
getInitParameter() //获取指定参数名称的全局参数值
getRealPath(String path) //获得当前项目的服务器磁盘路径
getContextPath() //获取项目的根路径
getAttribute(String parameterName) //获取ServletContext域中指定名称的参数值;
setAttribute(String paramterName,Object parameterValue) //存储参数到ServletContext域中;
removeAttribute(String parameterNam) //将ServletContext域中指定名称的参数移除;
1.3ServletConfig的配置方式
在<servlet>标签种,通过<init-param>标签来配置。有两个子标签:
1. <param-name>:代表初始化参数的key。
2. <param-value>: 代表初始化参数的value。
<context-param>
<param-name>username</param-name>
<param-value>root</param-value>
</context-param>
<context-param>
<param-name>password</param-name>
<param-value>root456</param-value>
</context-param>
1.4ServletConfig实现步骤
- 定义一个类,继承HttpServlet。
- 重写doGet()和doPost()方法。
- 在web.xml进行配置。
- 在请求方法中通过请求对象获取到ServletConfig对象。
- 然后再通过getInitParameter()方法获取到配置的初始化参数。
- 部署并启动项目。
- 通过浏览器测试。
代码实现:
package com.by.servlet;
import javax.servlet.*;
import javax.servlet.http.HttpServlet;
public class ServletConfigServlet extends HttpServlet {
@Override
public void service(ServletRequest servletRequest,
ServletResponse servletResponse) throws ServletException {
//1.获取ServletConfig对象
ServletConfig servletConfig = getServletConfig();
//2.获取Servlet中的初始化参数
String username = servletConfig.getInitParameter("username");
System.out.print