Servlet
Servle:
1).Servlet 是 JavaEE 规范之一。 规范就是接口
2). Servlet 就 JavaWeb 三大组件之一。 三大组件分别是: Servlet 程序、 Filter 过滤器、 Listener 监听器。
3). Servlet 是运行在服务器上的一个 java 小程序, 它可以接收客户端发送过来的请求, 并响应数据给客户端。
Servlet 类的继承体系

ServletConfig 类
一.定义:
1).ServletConfig 类从类名上来看, 就知道是 Servlet 程序的配置信息类。
2).Servlet 程序和 ServletConfig 对象都是由 Tomcat 负责创建, 我们负责使用。
3).Servlet 程序默认是第一次访问的时候创建, ServletConfig 是每个 Servlet 程序创建时, 就创建一个对应的 ServletConfig 对象。
二.作用:
1).可以获取 Servlet 程序的别名 servlet-name 的值
2). 获取初始化参数 init-param
3). 获取 ServletContext 对象
代码:
xml中配置代码:
1 <init-param> 2 <param-name>username</param-name> 3 <param-value>1332131xasda</param-value> 4 </init-param>
servlet中测试代码:
1 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 2 ServletConfig servletConfig = getServletConfig(); 3 String username = servletConfig.getInitParameter("name"); 4 System.out.println("名字:"+username); 5 }
ServletContext 类
一.定义:
1). ServletContext 是一个接口, 它表示 Servlet 上下文对象>
2). 一个 web 工程, 只有一个 ServletContext 对象实例。
3). ServletContext 对象是一个域对象。
4). ServletContext 是在 web 工程部署启动的时候创建。 在 web 工程停止的时候销毁。
二.域对象:
域对象, 是可以像 Map 一样存取数据的对象, 叫域对象。
这里的域指的是存取数据的操作范围, 整个 web 工程。
存数据 取数据 删除 数据
Map put() get() remove()
域对象 setAttribute() getAttribute() removeAttribute();
三.作用:
1).获取 web.xml 中配置的上下文参数 context-param
2). 获取当前的工程路径, 格式: /工程路径
3). 获取工程部署后在服务器硬盘上的绝对路径
4). 像 Map 一样存取数据
代码:
xml中配置代码:
1 <context-param> 2 <param-name>name</param-name> 3 <param-value>王余阳</param-value> 4 </context-param>
servlet中测试代码:
1 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 2 ServletContext servletContext = getServletConfig().getServletContext(); 3 //1、 获取 web.xml 中配置的上下文参数 context-param 4 String name = servletContext.getInitParameter("name"); 5 // 结果: context-param的name值: 王余阳 6 System.out.println("context-param的name值: "+name); 7 //2、 获取当前的工程路径, 格式: /工程路径 8 String contextPath = servletContext.getContextPath(); 9 //结果:当前工程路径:/Day_06 10 System.out.println("当前工程路径:"+contextPath); 11 //3、 获取工程部署后在服务器硬盘上的绝对路径 12 /** 13 * / 是斜杠被服务器解析地址为:http://ip:port/工程名/ 映射到 IDEA 代码的 web 目录<br/> 14 */ 15 String realPath = servletContext.getRealPath("/"); 16 //结果:工程部署的路径是:C:\Users\WangYuYang\IdeaProjects\JavaWeb\out\artifacts\Day_06_war_exploded\ 17 System.out.println("工程部署的路径是:"+realPath); // 18 }

浙公网安备 33010602011771号