JSP初步总结

    我们知道,JSP是一种动态网页技术,且它是服务器端技术,浏览器不能直接显示。我们还是从传统认识一个新事物的三个步骤来讲:


    1.What?    


    JSP是SunMicrosystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。它是Java Server Pages的简称。JSP技术有点类似ASP技术,它在传统的网页HTML文件中插入了Java程序段和JSP标记,从而形成了JSP文件。看到这里我们可以有个初步的了解,JSP=HTML+Java+标签,说白了就是在HTML代码中嵌入java代码的这么一个东东,看到这里想到了什么?我们.NET学习时候的MVC中有个Rezor视图,感觉很相似的样子,瞬间很有亲切感。


    2.Why?

    

    这么说吧,JSP的产生一定是有原因的,由于jsp本身也是一个Servlet,而且又包含了HTML标签,所以jsp可以说是结合了Servlet和HTML的优点。相对于HTML来说,Servlet是动态资源,可以编程;由于浏览器可以直接显示,不用为输出HTML标签发愁;

    

    3.How?


    一开始一定会纳闷,为什么是动态网页技术,不能再浏览器直接显示呢?这就需要我们了解一下JSP的实现原理了,首先来看一幅图:


               技术分享

                                     图1-1 JSP的创建流程


    从JSP的创建流程可以看出,JSP的实现步骤共有一下几步:


    1.当浏览器第一次访问jsp页面时,服务器会把jsp翻译成一个Java文件,该Java类是一个Servlet类;

    2.然后服务器再把Java文件编译成class文件;

    3.接着创建该类对象;

    4.最后调用该类的service()方法;

    5.当第二次再访问该jsp页面时,直接调用jsp页面对应Java类的service()方法。


    经过上面几个步骤,就创建出我们的JSP类了。在这里想说的是,JSP类在创建的过程中,继承了HttpJspBase类,这个类是Tomcat定义的类。该类实现了Servlet接口,因此JSP类也是Servlet类。JSP类重写了Servlet的service接口,将requestresponse是做为参数传递给了service()方法,在service()方法中,定义了6个变量,分别是sessionapplicationconfigoutpagepageContext,在加上service()方法自身截获异常的exception,共9大对象,这就是传说中的JSP中的9大内置对象。

    

     总的来讲,我对JSP的理解是这样的:


                                                    技术分享

                                                             图1-2 JSP初步印象

     

     在这里,我们就不再对这9大内置对象做详细介绍了,我在导图里将他们分为三类:


     1.和Http协议相关的:HttpServletRequest、HttpServletResponse、HttpSession

     2.和Servlet相关的:ServletContext、ServletConfig、PageContext

     3.和全局对象相关的:JspWriter,Object,Throwable


     以上就是小编对JSP的初步认识,有什么需要补充的地方,还请您多多提出宝贵意见!





郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。