Servlet总结1---基础东西的介绍

简介:

1.servlet是100%的运行在服务器端为客户端请求作出相应的的纯Java的应用程序。 

 

2.J2EE(Java)中有几种容器(曾经的面试题):

servlet容器(eg. Tomcat , Jetty)

EJB容器(JBOSS<Jboss公司> 、Weblogic<BEA> 、WebSphere<IBM>)

Applet容器(现在几乎不用了)

 

3.开发一个servlet的步骤:

①声明一个类,并且让该类继承自HttpServlet类

②重写doGet(),doPost()方法

③在web.xml中注册一个servlet

 

4.servlet的生命周期:(笔试和面试遇到过)

 

①客户端发出请求(post或get) → web容器(eg.Tomcat)

②容器产生request,resonse两个对象

③容器根据URL找到合适的Servlet并分配线程进行访问。

④Service()方法根据请求头(每次请求http的头部信息是不同的,eg.get,post),决定调用doGet()或者doPost()方法

⑤Servlet使用相应的对象通过容器给客户端做出响应

⑥service()方法执行结束,访问线程和request、response对象被销毁


5.生命周期的几个阶段:

①实例化(1次):web容器创建Servlet的实例。

②初始化(1次):web容器调用Servlet的init()方法。

③服务(多次调用):调用service()方法,由service方法调用doxxx()方

④销毁(1次):web容器关闭时调用destory()方法销毁servlet

 

6.一个Servlet在一个Web容器中只有一个对象(或实例,有唯一的实例,不同的线程),即只在第一次被请求时,创建一个对象;但是其doGet(),doPost()方法被反复调用  → 那么多个请求就会有多个线程,故有可能产生线程同步的问题,造成线程的不安全。 → 为了避免线程的同步问题,就要避免使用全局的实例变量。

 

7.注意事项:从servlet跳转到JSP页面时,最好用“请求转发跳转”,因为在页面的URL地址栏不会显示jsp页面的地址,有利于保护真正的JSP地址。

 

8.在servlet中创建session对象:

HttpSession session = request.getSession();

 

9.过滤器 (比如:权限过滤,把UTF-8放在过滤器中,我们就不用每次都转码了!!)

①servlet中的过滤器是实现了javax.servlet.Filter这个接口。

②其是双向过滤

 

③Filter在整个容器中也只有一个对象,并且是在关闭容器销毁 

④所有的请求都要经过过滤器。(当然也和你web.xml中的配置有关系)

⑤多个过滤器的过程顺序, 以在web.xml中的配置顺序为主

 10.在servlet中获得application对象的方法有2两种:

①ServletContext application = getServletContext();

②HttpSession session = request.getSession();

ServletContext application = session.getServletContext();

 

 

 

 

 

     本文转自韩立伟 51CTO博客,原文链接:http://blog.51cto.com/hanchaohan/931037,如需转载请自行联系原作者








相关文章
|
2月前
|
设计模式 前端开发 Java
从0开始回顾SpringMVC---系列一
SpringMVC 1、什么是SpringMVC? SpringMVC是一个基于Java实现了MVC设计模式的请求驱动类型的轻量级Web框架,通过把Model,View,Controller分离,将web层进行职责解耦,把复杂的web应用分成逻辑清晰的及部分,简化开发,减少出错,方便组内开发人员之间的配合。 MVC ● Model(模型):数据模型,提供要展示的数据,因此包含数据和行为,可以认为是领域模型或JavaBean组件(包含数据和行为),不过现在一般都分离开来:Value Object(数据Dao)和服务层(行为Service)。也就是模型提供了模型数据查询和模型数据的状态更新等功能
|
3月前
|
存储 Java 应用服务中间件
JavaWeb----Servlet技术
JavaWeb----Servlet技术
328 0
|
9月前
|
Java 应用服务中间件 程序员
|
9月前
|
Java 应用服务中间件 API
|
小程序 Java 应用服务中间件
Servlet入门案例(一)认识Servlet
Servlet入门案例(一)认识Servlet
114 0
Servlet入门案例(一)认识Servlet
|
Java 应用服务中间件
Java Web学习---Servlet学习(servlet生命周期)
Java Web学习---Servlet学习(servlet生命周期)
96 0
Java Web学习---Servlet学习(servlet生命周期)
|
Java API
Java Web学习---Servlet学习(servlet中的ServletConfig对象)
Java Web学习---Servlet学习(servlet中的ServletConfig对象)
82 0
|
安全 Java 应用服务中间件
Java Web学习---Servlet学习(学习步骤介绍)
Java Web学习---Servlet学习(学习步骤介绍)
91 0
|
Java 应用服务中间件 Maven
Java Web Servlet (Part A)- Servlet & HttpServlet
Java Web Servlet (Part A)- Servlet & HttpServlet
Java Web Servlet (Part A)- Servlet & HttpServlet
|
XML Java 数据格式
Servlet基础
Servlet基础
96 0
Servlet基础