📄 right10_3_3.htm
字号:
<html><head><title>JAVA编程语言</title><meta http-equiv="Content-Type" content="text/html; charset=gb2312"><link rel="stylesheet" href="../../../css/text.css" type="text/css"></head><body bgcolor="#FFFFFF" text="#000000" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" ><table width="100%" border="0" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF"> <tr> <td valign="top"> <table width="90%" border="0" cellspacing="0" cellpadding="0" align="center" bgcolor="#FFFFFF"> <tr> <td valign="top"> <p class="pt9-black"> JSP一般的运行方式为:当服务器启动后,当Web浏览器端发送过来一个页面请求时,Web服务器先判断是否是JSP页面请求。如果该页面只是一般的HTML/XML页面请求,则直接将HTML/XML页面代码传给Web浏览器端。如果请求的页面是JSP页面,则由JSP引擎检查该JSP页面,如果该页面是第一次被请求、或不是第一次被请求但已被修改,则JSP引擎将此JSP页面代码转换成Servlet代码,然后JSP引擎调用服务器端的Java编译器javac.exe对Servlet代码进行编译,把它变成字节码(.class)文件,然后再调用JAVA虚拟机执行该字节码文件,然后将执行结果传给Web浏览器端。如果该JSP页面不是第一次被请求,且没有被修改过,则直接由JSP引擎调用JAVA虚拟机执行已编译过的字节码.class文件,然后将结果传送Web浏览器端。下面是一张JSP运行的示意图:<br> <img src="../../../images/tu/ch10/10-1.jpg" width="440" height="469"> <br> <br> 从这里我们已经不难看出JSP和Servlet的关系,JSP引擎负责把JSP页面翻译成Servlet,因此JSP在底层完全就是Servlet(指原始概念上的Servlet,而不是HttpServlet)。前面我们提到JSP编程对应javax.servlet.jsp,更确切的讲,这个包是供JSP引擎使用的,它在做翻译的时候需要用到这个包,我们在编写JSP页面的时候是不需要涉及这个包的使用的。<br> <br> <font color="000099">为什么有了Servlet还要在高层实现一个JSP呢?这个问题跟Servlet本身编写的烦杂程度有关,如果用Servlet来控制页面外观的话,将是一件十分头疼的事情,使用JSP就把烦杂的打印任务交给了JSP引擎,程序员可以把精力集中到逻辑控制上面。在后面还会有进一步的比较。</font><br> <br> </p> </td> </tr> </table> </td> </tr></table></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -