JSP会被编译成.java放Tomcat/work/Catalina/localhost/***/org/apache/jsp/page
然后编译成.class
jsp = java + html servlet = java + out.print(html)
1.客户端发送要求给web容器
2.web容器将jsp起首转译成servlet源代码
3.web容器将servlet源代码编译成.class 文件
4.web容器实行.class 文件
5.web容器将效果响应给客户端
JSP是一种剧本言语,包装了Java Servlet体系的界面,简化了Java和Servlet的运用难度,同时经由历程扩大JSP标签(TAG)供应了网页动态实行的才能。尽管如此,JSP仍没有超越Java和Servlet的局限,不仅JSP页面上能够直接写Java代码,而且JSP是先被译成Servlet以后才现实运转的。JSP在效劳器上实行,并将实行效果输出到客户端浏览器,我们能够说基础上与浏览器无关。它是与JavaScript差别的,JavaScript是在客户端的剧本言语,在客户端实行,与效劳器无关。
servlet能够被认为是效劳器端的applet。servlet被Web效劳器加载和实行,就犹如applet被浏览器加载和实行一样。servlet从客户端(经由历程Web效劳器)吸收要求,实行某种功课,然后返回效果。
运用servlet的基础流程以下:
·客户端经由历程HTTP提出要求.
·Web效劳器吸收该要求并将其发给servlet。假如这个servlet尚未被加载,Web效劳器将把它加载到Java虚拟机而且实行它。
·servlet将吸收该HTTP要求并实行某种处置惩罚。
·servlet将向Web效劳器返回应对。
·Web效劳器将从servlet收到的应对发送给客户端。
因为servlet是在效劳器上实行,一般与applet相干的平安性的题目并不需完成。要注意的是Web浏览器并不直接和servlet通讯,servlet是由Web效劳器加载和实行的。
而servlet是用Java编写的,所以它们一开始就是平台无关的。如许,Java编写一次就能够在任何平台运转(write once,run anywhere)的许诺就一样能够在效劳器上完成了。
servlet另有一些CGI剧本所不具有的奇特长处:
servlet是耐久的。servlet只需Web效劳器加载一次,而且能够在差别要求之间坚持效劳(比方一次数据库衔接)。与之相反,CGI剧本是短暂的、瞬态的。每一次对CGI剧本的要求,都邑使Web效劳器加载并实行该剧本。一旦这个CGI剧本运转完毕,它就会被从内存中消灭,然后将效果返回到客户端。CGI剧本的每一次运用,都邑形成顺序初始化历程(比方衔接数据库)的反复实行。
servlet是与平台无关的。如前所述,servlet是用Java编写的,它天然也继续了Java的平台无关性。
servlet是可扩大的。因为servlet是用Java编写的,它就具有了Java所能带来的一切长处。Java是硬朗的、面向对象的编程言语,它很轻易扩大以顺应你的需求。servlet天然也具有了这些特性。
servlet是平安的。从外界挪用一个servlet的唯一要领就是经由历程Web效劳器。这供应了高水平的平安性保证,尤其是在你的Web效劳器有防火墙庇护的时刻。
以上就是jsp编译生成什么的细致内容,更多请关注ki4网别的相干文章!