栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

JAVA

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JAVA

0.se->ee文件的创建过程

 base 卡特琳娜 为了方便指向, + - 号是表示base路径下那个xml存不存在

-->ee以下

部署资源

 导入tomcat包

1.生命周期

1.init方法完成初始化操作

2.任何客户端的请求都会交给sevlet的service 方法来进行处理,servlet的service是程序入口

3.销毁时会调用destroy方法来完成销毁工作

 注:servlet只被创建出一个对象

安全问题:init()线程安全问题:如果不使用成员变量,没有问题(因为成员变量是共享的),也就是说所有的访问都是由这一个sevlet来进行反馈的(单例)

 destroy()方法

1.应用被卸载

 2.服务器关闭

init补充:默认情况下是当前第一次访问时会触发,其实还可以设置一个参数,load-on-starip=非负数

,init方法可以随着应用的启动而执行,执行的时机会提前

 设置方式:注解方式

2.配置文件

所以设置之后mvc容器会在发生servlet的时候就生成了

 3.servlet的url-pattern的写法:

1./xxxx /servlet1

2.*.xxx *.html

优先级:

/xxx优先级高于*.xxx

如果都为/xx,匹配程度越高越优先

DefaultServlet

缺省Servlet

 jsp的本质是servlet,当访问jsp的时候,其实访问的时候

 /*的优先级要高于*.jsp所以最终调用的都是/*

当屏蔽了/*的时候jsp页面可以显示,但是html文件显示的是/

实际上/就是缺省Servlet,功能是用来处理那些没有任何Servlet可以处理的请求(也即是如果不写/,那么tomcat的缺省会去找资源文件(IO流读取html文件),如果发生了重写,会调用自己写的/,)

(这也就是中央调度器用"/"的时候,为什么要设置静态文件处理方式的一个原因)

 所以核心就是,如果重写了"/",那么所有静态资源的访问都会到这里,

如果没有写(在访问静态资源的时候),tomcat会调用自己的缺省servlet,去读取静态文件(也就是说其实静态文件的访问也是一个servlet)

(这也就是中央调度器用"/"的时候,为什么要设置静态文件处理方式的一个原因)

3.SevletConfig(了解)

 也就是可以获取Config(也就是web.xml)里面的配置参数

4.ServletContext

(思考这个域的范围,还有servlet的生命周期(服务器关闭和应用卸载)->一个servlet访问就有一个servlet)

  •         同一个应用下(/app35)有不同的servlet,
  •                 不同的应用下是相互隔离的

1.一个运行时共享数据的场所

        servlet1与servlet2之间的数据共享

2.电商场景:

电商首页的产品分类:

首页也需要使用该数据,可以通过首页获取之后放置到context之中,其他页面(Servlet)从Context中获取就可以了;

(但是如果不从首页访问,可以放到init方法里面然后放到域吗-->结果表明确实是这样(秒啊))

5.文件的绝对路径

        

 没有main方法,调用方法的是tomcat,以下是tomcat下的一个jar包

(因此直接读file的地址不是文件的真实地址)

 

2.拿到文件的绝对路径

 1.通过域空间得到真实地址,然后拼接

2.直接写当前文件的地址,得到真实路径

 

缺省补充

 

 都会给Servlet,找不到的时候会给缺省进行管理,Tomcat的缺省会io流读取文件;

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/389708.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号