Servlet

JavaWeb三大组件

​ Servlet,Filter,Listener

路径匹配优先级

​ 完全匹配路径>目录匹配>扩展名匹配

Servlet

  • init(ServletConfig):void第一次调用时,执行初始化方法
  • service(ServletRequest,ServletResponse):void 每一次调用都会执行
  • destory():void 服务器关闭或项目移除时调用
    在运行期间仅会创建一个实例即同时n个请求访问该servlet会共享这一个实例,为线程不安全

第一次访问Servlet创建Servlet的实例(单实例)

servlet默认在第一次访问的时候创建,现在让servlet在服务器启动的时候创建好,对servlet配置在web.xml中<servlet></servlet>标签中配置:<load-on-startup>2</load-on-startup>----传入正整数,整数越小,优先级越高

ServletContext,服务器启动的时候,为每个WEB应用创建一个单独的ServletContext对象

  • 多个servlet之间共享数据
    getAttribute(),setAttribute(),removeAttribute()
  • 获取web项目中指定资源(文件)
    getResourceAsStream(String):InputStream
    ​getRealPath(String):String

扩展:

  • Class.getResourceAsStream(String path)
    path 不以'/'开头时默认是从此类所在的包下取资源,以'/'开头则是从ClassPath(Src根目录)根下获取。其只是通过path构造一个绝对路径,最终还是由ClassLoader获取资源。
  • Class.getClassLoader.getResourceAsStream(String path) :
    默认则是从ClassPath根下获取,path不能以'/'开头,最终是由ClassLoader获取资源。
  • ServletContext. getResourceAsStream(String path):
    默认从WebAPP根目录下取资源,Tomcat下path是否以’/'开头无所谓,当然这和具体的容器实现有关。如果文件在SRC下,那么我们可以这么写path : /WEB-INF/classes/xxx.file
  • getRealPath(String path):
    返回资源文件在服务器系统上的真实路径(文件的绝对路径),path默认从webApp根目录下取资源,若不能转化为真实路径返回为null

进行整个web项目初始化数据设置

getInitParameter(String):String,getInitParameterNames():Enumeration<String>
​ 在web.xml可以给整个web项目配置初始化参数

<context-param>
    <param-name>参数名称</param-name>
    <param-value>参数数值</param-value>
</context-param>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. ServletContext接口介绍 ServletContext接口定义了servlet运行时Web应用的...
    Lucky_Micky阅读 1,768评论 0 3
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,026评论 19 139
  • Servlet学习的大纲 servlet概念及相关接口简介 servet 执行过程 servlet映射路径 缺省s...
    奋斗的老王阅读 1,218评论 1 51
  • 素蕊轻黄体性柔,横笛晓暮天边柳。 何须桂子月中落,秀水寒烟舞清秋。 秋山宜,云外飘,轩窗开处掩流苏。 骚人还解无人...
    雪歌牧樱阅读 435评论 5 7
  • 偶尔间,一次叹息的冰凉, 察觉,冷冷的时节,来的 悄悄。 长久以来,坐在暖暖的温床上, 等待命运的光顾与恩赐, 温...
    心是甜甜的阅读 205评论 0 0