jsp

             JSP内置对象与Servlet子类映射表

JSP内置对象             Servlet子类                           作用域

request                javax.servlet.http.HttpServletRequest          Request

response               javax.servlet.http.HttpServletResponse         Page

session                javax.servlet.http.HttpSession                Session

application             javax.servlet.ServletContext                  Application

out                   javax.servlet.jsp.JSPWrite                    Page

pageContext           javax.servlet.jsp.PageContext                  Page

config                javax.servlet.ServletConfig                    Page

page                 java.lang.Object                             Page

exception             java.lang.Throwable                          Page

一.request对象 客户端的请求信息被封装在request对象中,通过它才能了解到客户的需求,然后做出响应.它是HttpServletRequest类的实例.
二.response对象 response对象包含了响应客户请求的有关信息,但在JSP中很少直接用到它.它是HttpServletResponse类的实例.
三.session对象 session对象指的是客户端与服务器的一次会话,从客户连到服务器的一个WebApplication开始,直到客户端与服务器断开连接为止.它是HttpSession类的实例.
四.out对象 out对象是JspWriter类的实例,是向客户端输出内容常用的对象
五.page对象 page对象就是指向当前JSP页面本身,有点象类中的this指针,它是java.lang.Object类的实例
六.application对象 application对象实现了用户间数据的共享,可存放全局变量.它开始于服务器的启动,直到服务器的关闭,在此期间,此对象将一直存在;这样在用户的前后连接或不同用户之间的连接中,可以对此对象的同一属性进行操作;在任何地方对此对象属性的操作,都将影响到其他用户对此的访问.服务器的启动和关闭决定了application对象的生命.它是ServletContext类的实例.
七.exception对象 exception对象是一个例外对象,当一个页面在运行过程中发生了例外,就产生这个对象.如果一个JSP页面要应用此对象,就必须把isErrorPage设为true,否则无法编译.他实际上是java.lang.Throwable的对象
八.pageContext对象 pageContext对象提供了对JSP页面内所有的对象及名字空间的访问,也就是说他可以访问到本页所在的SESSION,也可以取本页面所在的application的某一属性值,他相当于页面中所有功能的集大成者,它的本类名也叫pageContext.
九.config对象 config对象是在一个Servlet初始化时,JSP引擎向它传递信息用的,此信息包括Servlet初始化时所要用到的参数(通过属性名和属性值构成)以及服务器的有关信息(通过传递一个ServletContext对象)

2.什么是Servlet?
    Servlet是服务器端小程序,用来处理客户端发送的请求,并由服务器响应给客户端的java编写的程序.
    Servlet只在服务器运行
3.Servlet
        通常称为服务器端小程序,是运行在服务器端的程序,用于处理及响应客户端的请求。
        Servlet是个特殊的Java类,这个Java类必须继承HttpServlet。每个Servlet可以响应客户端的请求。
        Servlet提供不同的方法用于响应客户端请求.Servlet只需重写service()方法即可响应客户端的所有请求。
        doGet:用于响应客户端的GET请求。
        doPost:用于响应客户端的POST请求。
        HttpServlet还包含两个方法。
        init(ServletConfig config):创建Servlet实例时,调用该方法的初始化Servlet资源。
        destroy():销毁Servlet实例时,自动调用该方法的回收资源。
        通常无须重写init()和destroy()两个方法,除非需要在初始化Servlet时,完成某些资源初始化的方法,才考虑重写init方法。
        如果需要在销毁Servlet之前,先完成某些资源的回收,比如关闭数据库连接等,才需要重写destroy方法。
4.Servlet生命周期:
  装载Servlet。这项操作一般是动态执行的。
    然而,Server通常会提供一个管理的选项,用于在Server启动时强制装载和初始化特定的Servlet。
  Server创建一个Servlet的实例
  Server调用Servlet的init()方法
  一个客户端的请求到达Server
  Server创建一个请求对象
  Server创建一个响应对象
  Server激活Servlet的service()方法,传递请求和响应对象作为参数
  service()方法获得关于请求对象的信息,处理请求,访问其他资源,获得需要的信息
  service()方法使用响应对象的方法,将响应传回Server,最终到达客户端。service()方法可能激活其它方法以处理请求,如doGet()或doPost()或程序员自己开发的新的方法
  对于更多的客户端请求,Server创建新的请求和响应对象,仍然激活此Servlet的service()方法,将这两个对象作为参数传递给它。如此重复以上的循环,但无需再次调用init()方法。
    一般Servlet只初始化一次 ,当Server不再需要Servlet时(一般当Server关闭时),Server调用Servlet的Destroy()方法。
  
5.大部分时候,Servlet对于所有请求的响应都是完全一样的。此时,可以采用重写一个方法来代替上面的几个方法:
  只需重写service()方法即可响应客户端的所有请求。
6.Servlet提供了大量的实用工具例程,例如自动地解析和解码HTML表单数据、读取和设置HTTP头、处理Cookie、跟踪会话状态等.
7.JSP与Servlet的比较:
     JSP的本质就是Servlet,JVM只能识别java的类,不能识别JSP的代码,但是JSP的代码之所以能得以执行,其原因就是:
    
     Web容器将JSP的代码编译成JVM能够识别的java类!所以JSP可以直观的认为是Servlet的简化.
    Servlet中没有内置对象,原来JSP中的内置对象都必须由程序显式创建。
    对于静态的HTML标签,Servlet都必须使用页面输出流逐行输出。
    
8.Servlet中web.xml文件的配置:
    <servlet>
        <servlet-name>.....</servlet-name>   中间写入的是你的Servlet的名称
        <servlet-class>.......</servlet-class> 这里写入的是你的Servlet类(包名.类名)
        </servlet>
        <servlet-mapping>
        <servlet-name>.......</servlet-name>  同上,名称要跟上面一致
        <url-pattern>/.......</url-pattern>  注意:要有反斜杠,后面写入的是URL地址
        </servlet-mapping>
      
9.表单提交方式get与post的比较:
   1)安全性:get<post 因为get在提交数据时数据会在地址栏显示出来
   2)提交内容大小:get<post get提交内容不大于2K,post提交内容最好不到与64K,提交内容太大会占用带宽,增加服务器负担
   3)速度:get>post get会要求服务器立即响应,post会先看服务器是否繁忙!
 
10.Servlet是个特殊的Java类,这个Java类必须继承HttpServlet..
11.在<form>中使用get传递参数的时候,在地址栏中,地址与参数之间用"?"隔开,而参数之间,用"&"隔开。

你可能感兴趣的:(jvm,jsp,Web,应用服务器,servlet)