servlet的生命周期
生命周期指的是,类中的对象从创建到销毁的全过程servlet的生命周期指的是,servlet 对象从创建到销毁的全过程
init方法为servlet对象的初始化方法
该方法的执行时机为,当servlet对象创建完毕后,马上执行该方法
反过来讲,如果该方法执行了,说明sevlet对象创建了
当url请求的第一次发出后,servlet对象创建,以后每一次执行该url请求,都只会用这个创建过的对象。
该方法的执行时机为,当对象销毁前,调用该方法执行最后的处理工作,反过来讲,如果该方法执行了,讲明servlet对象销毁了
servlet对象在服务器关闭(stop正常关闭)后销毁,强制关闭服务器停电了,不会执行销毁方法。
servlet的创建
*1.创建一个普通的java类,继承javax.servlet.http.HttpServlet
*2.重写两个方法,分别为doGet方法和doPost方法
这两个方法就是serylet用来接受并处理请求的核心方法
*3.将两个方法中的默认自带的内容清空
*4.修改方法中的变里的名字,修改为request response
5.完成方法体
6.在web.xml中对servlet进行配置工作
servlet的继承类
servlet中service方法的作用(分配请求)
get提交和post 提交的区别
get提交:
(1)参数的传递
显示的传递参数,参数会显示的挂在url路径的后面。
a.安全性低
b.大量的参数传递,有可能会超出浏览器地址栏的上限,导致参数传递的不全。
(2)参数的中文支持性
从示例来看,get提交的参数,后台接收后没有出现中文乱码问题之所以成功了,是因为我们现在的服 务器的版本号较高(tomcat9)…
如果应用的是较低版本的服务器,那么一定会出现乱码.。
如果出现乱码了,解决方式为。
(3)执行效率:
执行效率相对较高。
post提交
(1)参数的传递
参数是以http协议请求体的方式传输到后台的…
参数是以隐式传递的,在地址栏上是没有体现的。
a.安全性高
b.不用担心参数量多大的问题
(2)参数的中文支持性
通过示例,提交中文参数,后台接收后,是乱码。
我们在后台接收参数前,需要对我们接收的参数进行字符编码的处理
注意:以上代码仅针对post参数有效
(3)执行效率。
执行效率与get 请求比较,相对较低.。
实际项目开发中对于get和post提交方式的使用。
url-pattern的表现方式
过滤器(Filter)
过滤器概述
画图说明过滤器执行原理过滤器类似于servlet,也是用来接收并处理浏览器请求的java类。
只不过与servlet 不同的是,filter 是在servlet执行之前执行。
servlet 接收请求是用来处理业务逻辑的。
filter 接收请求是用来处理过滤业务的
(1)过滤字符编码
过滤器的url-pattern.
如果浏览器发出的请求,与web.xml中的filter的多个url-pattern都匹配,那么这些匹配的filter都执行.执行的顺序为按照 web.xml中的上下的配置顺序执行,配置在较上位置的优先执行!
过滤器链的作用
(2)过滤器实现拦截请求。
过滤器的生命周期
创建:服务器启动时,服务器会自动的为我们创建出filter对象
销毁:关闭服务器
监听器
什么是监听器
监听器就是一个java类,用来起到监听作用,当java中的其他组件或功能在发生变化时,所作出的提醒或操作。
监听器都能监听什么
监听域对象的创建与销毁。
监听域对象属性值创建更换与销毁
监听器的创建步骤
创建监听器的步骤:
1.创建一个音通的java类,实现监听器接口
我们监听什么,就实现相应的接口
比如我们现在型描听上下文对象的创建与般,那么我们就要实现ServletContextListener这个接口
2.重写监听方法
我们在这里至写的是监听上下文对象镇主与费的方法。
3.偿改方法中的变里名
event对象的作用是能够取得监听的对象
4.完成监听方法
5.在web.xm1中配置监听器