JSP运行机制

                                                                                    JSP运行机制

     JSP是服务器端技术,在服务器端JSP引擎解释JSP代码,然后将结果以HTML的页面形式发送到客户端,在客户端的用户是看不到JSP代码的。

  

     JSP的运行过程:

     1.当服务器上的一个JSP页面第一次被请求时,服务器上的JSP引擎解析页面,并生成一个Java源文件*.java。

 

     2.然后把该java文件编译成Java class字节码文件*.class。这个class文件就是Servlet,Servlet引擎像处理其它所有的Servlet一样处理该class文件。

 

     3.Servlet引擎载入class文件开始执行。

 

     4.Servlet执行完成后,把结果返回给发出请求的客户。

 

     其中,过程1、2只在首次执行或升级JSP时才发生,Servlet引擎只在服务器重新启动后产生第一个请求时才执行过程3;class载入器仅载入class文件一次,并且在Java虚拟机的运行期间内均有效可行。过程4的执行效率与数据量有关。由于在JSP程序的执行过程中预先生成了.class文件,所以同其他技术相比,JSP的运行速度是较快的。

 

     由以上可知,JSP仅在第一次执行时需将.jsp转译为.java文件(即Servlet类),当再重复调用执行时,就直接执行第一次所产生的Servlet,而不用再重新将JSP编译成Servlet。因此,除了第一次的编译会花较多的时间之外,之后的JSP和Servlet的执行速度几乎相同。

 

     一般,将JSP网页的执行分为两个时期:转译时期(Translation Time)和请求时期(Request Time)。转译时期即过程1,请求时期即过程2、3、4。

 

转译、请求时期程序示意图如下:

 <!--StartFragment -->

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值