Servlet详解(二)

浏览器不能直接访问Servlet文件,只能通过映射的方式来间接访问Servlet,映射需要开发者手动配置,有两周配置方式。
基于XML文件的配置方式(Servlet详解一)
在这里插入图片描述
基于注解的方式(替代了XML配置方式)
在这里插入图片描述
上述两种配置方式完全一致,将demo1与MyServlet进行映射,即在浏览器地址种直接访问demo就可以映射到MyServlet。

Servlet的生命周期

1.当浏览器访问Servlet的时候,Tomcat会查询当前Servlet的实例化对象是否存在,如果不存在,则通过反射机制动态创建对象,如果存在,直接执行第3步。
2.调用init方法完成初始化操作。
3.调用service方法完成业务逻辑操作。
4.关闭tomcat时,会调用destory方法,释放当前对象所占用的资源。

Servlet的生命周期方法:无参构造函数,init,service,destory
1.无参构造函数只调用一次,创建对象
2.init只调用一次,初始化对象
3.service调用N次,执行业务方法
4.destory只调用一次,卸载对象
在这里插入图片描述
启动Tomcat后,发现控制台有输出
在这里插入图片描述
网页每刷新一次,就是发送一次请求,就会调用一次service方法,不会调用init
service是非静态方法,调用时,必须通过对象
只创建一个对象,反复调用

在这里插入图片描述
关掉Tomcat服务,调用Destrory
在这里插入图片描述
创建对象是由Tomcat服务器来完成,通过反射机制来创建对象,通过反射机制拿到构造函数
在这里插入图片描述
在这里插入图片描述
刷新的时候,调用service方法
在这里插入图片描述
看Tomcat如何调用无参构造
在这里插入图片描述

代码包裹,sourround with的快捷键是Ctrl+Alt+T
在这里插入图片描述
在这里插入图片描述
把两个异常合并,找到它们的父类就行
在这里插入图片描述
运行main方法
在这里插入图片描述
报错找不到类方法,加载不了Servlet,因为Servlet要在Web环境中才能找到,启动tomcat,才能加载,TomcatTest.java是java环境
在这里插入图片描述
在这里插入图片描述
解决办法,把jar包导进来
在这里插入图片描述
把servlet-api.jar拷到lib文件夹下面
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
重新运行一下,把构造器输出了
在这里插入图片描述
在这里插入图片描述
construct用来描述无参构造方法public MyServlet()
在这里插入图片描述
construct.newInstance();等于是在调用无参构造方法, 等于new MyServlet。
正常情况下,是直接调对象的方法。反射机制是先拿到方法,再对这个方法的对象进行操作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

生活热爱就好

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值