更新时间:2020-10-22 17:56:23 来源:极悦 浏览962次
Java Web的三大组件:Filter、Servlet和Listener,一直是Java Web开发基础中非常重要的知识和面试考点,尽管我们在实际中很难同时接触这三个组件,但是还是有备无患的了解一下。下面为大家一一介绍JavaWeb三大组件。
一、JavaWeb组件一:Servlet
在Java web b/s架构中,servlet扮演了重要的角色,作为一个中转处理的容器,他连接了客户端和服务器端的信息交互和处理。简单来说,客户端发送请求,传递到servlet容器,而servlet将数据转换成服务器端可以处理的数据再发送给服务器端,再数据处理之后,再传递到servlet容器,servlet再转译到客户端,完成了一次客户端和服务器端的信息交互。
Servlet是通过Java编写的,因为他也具备了Java的一些特点,比如跨平台性,可扩展性高,然而他的优点不仅仅是局限于语言方面,因为Servlet的出现,可以使我们将JSP页面中的一些JAVA代码移植到Servlet中来,可无疑使前端人员深受喜欢,方便了项目的修改完善,而Servlet的使用也是非常的简单。
Servlet的生命周期有四个阶段,第一个阶段,实例化,会调用构造方法,第二个阶段是初始化,会调用init()方法,第三个阶段是请求处理,调用service方法,第四个阶段,服务终止也就是销毁阶段,调用destroy方法。
前台如何将数据传递给Servlet?也是非常简单的,只需表单提交就可以轻松完成,Servlet可以使用request.getParameter来接受,传递给前台就可以使用request.setA什么的来赋值。
页面提交的时候有get和post两种方式,这俩种方式都会在Servlet中处理,如果是get则会调用doget,post则会dopost,而同时使用,只需要post调用doget方法就可以。
二、JavaWeb组件二:Filter
Filter的字面意思是过滤、筛选,同样Filter是javaweb的过滤器。filter是一个可以复用的代码片段,可以用来转换HTTP请求、响应和头信息。Filter不像Servlet,它不能产生一个请求或者响应,它只是修改对某一资源的请求,或者修改从某一的响应。在javaweb中使用方法大致和Servlet一样,也需要配置web.xml文件,也有三个生命周期,初始化参数创建Filter调用init()方法——拦截到请求时调用doFilter()方法——销毁Filter时调用destroy()方法。但是Filter和Servlet的功能是不一样的,servlet负责处理请求,filter负责拦截请求和放行,可以实现Url级别的权限访问,敏感词汇过滤,解决编码格式问题等等。
三、JavaWeb组件三:Listener
Listener主要是javaweb中的监听器,使用的话,我们需要专门创建一个特定接口的java类,用这个java类去监听另一个java类的方法调用,如果另一个类的属性改变了,前面的java类就会监听到后面java类所发生的变化,监听器中的某个方法就会立刻执行。Listener主要用来监听ServletContext,HttpSession,ServletReques这三个域对象。
Javaweb三大组件Filter、Servlet、Listener的功能分别是拦截请求和放行,处理请求,监听网站的访问量、在线人数等信息。他们之间各有分工,因为他们的存在,JavaWeb的功能才能变得越来越强大。Javaweb三大组件Filter、Servlet、Listener三者相互协作,共同铸就了Java Web在前端开发中的不可撼动的地位!
0基础 0学费 15天面授
Java就业班有基础 直达就业
业余时间 高薪转行
Java在职加薪班工作1~3年,加薪神器
工作3~5年,晋升架构
提交申请后,顾问老师会电话与您沟通安排学习