Servlet配置虚拟路径(访问路径)的三种方法以及web开发中的路径问题
一、虚拟路径
配置虚拟路径
web.xml配置文件的虚拟路径
<servlet-mapping>
<url-pattern>/demo5</url-pattern>
</servlet-mapping>
三种配置方法
* 完全路径匹配
* 以/开头的 /demo5 /servlet/demo5
* 目录匹配
* 以/开头的 /*
* 通过:http://localhost/day09/demo5可以访问
* 扩展名匹配
* 不能以/开头的 *.do *.action
* 通过:http://localhost/day09/demo5.do可以访问
* 三种访问路径的优先级
* 完全路径匹配 > 目录匹配 > 扩展名匹配(*****)
* Servlet路径映射举例
二、web开发中的路径问题
* 相对路径
* 一个文件相对于另一个文件的位置的关系。
* 不能以/开头 写法:./demo=demo同级目录 ../demo上级目录
* 绝对路径(推荐使用)
* 以 “/” 开头的
* 访问demo5: http://localhost/day09/demo5
* 从1.html使用绝对路径访问demo5:http://localhost/day09/demo5
* 简写方式:/day09/demo5
* 客户端绝对路径
* /day09/demo5 需要写项目名
* 服务器绝对路径
* /demo5 不能写项目名
三、ServletConfig对象:和配置文件相关
:服务器加载配置文件,然后把内容赋值给ServletConfig对象
Init(ServletConfig config):初始方法中的参数对象
* 配置初始化参数
* 需要在<servlet></servlet>标签下配置。
* 如果要是配置在某个servlet的标签下,那么只能在该servlet中获取初始化参数。
<init-param>
<param-name>username</param-name>
<param-value>root</param-value>
</init-param>
* String getServletName() 获取配置文件中servlet的名称
* String getInitParameter(String name) 获取初始化参数
* Enumeration getInitParameterNames() 获取初始化参数的名称们
注意:System.out.println()向控制台Console输出内容,
Response.getWrite().write():向浏览器输出内容
四、ServletContext对象(域对象)(接口)
* 定义:WEB容器在启动时,它会为每个WEB应用程序都创建一个对应的ServletContext对象,它代表当前web应用。
* 一个WEB应用对应一个ServletContext对象
* 一个WEB应用下有多个Servlet程序
* 一个web应用所有的servlet程序都共享同一个ServletContext对象
* demo1存入内容到ServletContext,demo2从ServletContext中取出来:
* ServletContext相当于一个媒介,demo1向其中存入数据,demo2可以冲其中取出数据
五、读取资源文件
* InputStream getResourceAsStream(String path) 通过文件的地址获取输入流
* String getRealPath(String path) 通过文件的地址获取文件的绝对磁盘路径
转载于:https://www.cnblogs.com/zsj03180204/p/11044324.html
原文地址: https://blog.csdn.net/weixin_30394633/article/details/95145673
本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
相关文章