A. jsp的执行过程是怎样的
JSP的执行过程
JSP的执行过程主要可以分为以下几点:
客户端发出请求。
Web容器将JSP转译成Servlet源代码。
Web容器将产生的源代码进行编译。
Web容器加载编译后的代码并执行。
把执行结果响应至客户端。
过程介绍
客户端发出请求,请求为JSP,web容器就会找出相应的servlet进行处理。
将servlet转成字节码文件。
将字节码文件加载到web容器里。
这时会在web容器里建立实例。首弊衫
进行初始化。
通过service接受请求。
然后web容器会自动产生两个对象servlet和service最后进行销毁。
JSP的运行原理
WEB容器(Servlet引擎)接收到以。jsp为扩展名的URL的访问请求时,它将把该访问请求交给JSP引擎去处理。Tomcat中的JSP引擎就是一个Servlet程序,它负责解释和执行JSP页面。
每个JSP页面在第一次被访问时,JSP引擎将它翻译成一个Servlet源程序,接着再把这个Servlet源程序编译成Servlet的class类文件,然后再由WEB容器(Servlet引擎)像调用普通Servlet程序一样的方式来装载和解释执行这个由JSP页面翻译成的Servlet程序。
Tomcat 5.x把为JSP页面创建的Servlet源文件和class类文件放置在“<TOMCAT_HOME>workCatalina<主机名><应用程序名>”目录中,
Tomcat将JSP页面翻译成的Servlet的包名为org.apache.jsp.<JSP页面在WEB应用程序内的目录名>。
JSP规范也没有明确要求JSP中的脚本程序代码必须采用java语言,JSP中的脚本程序代码可以采用Java语言之外的其他脚本语言来编写,但是,JSP页面最终必须卜侍转换成Java Servlet程序。
可以在WEB应用程序正式发布之前,将其中的者腔所有JSP页面预先编译成Servlet程序。
B. JSP 传递参数给FLASH AS3.0
如果是用URLLoader这么写
as3.0:
var myvar;
var url:URLRequest=new URLRequest("somthing.jsp");
var loader:URLLoader=new URLLoader(url);
loader.addEventListener(Event.COMPLETE,handler);
function handler(e:Event){
myvar=e.target.data;
trace(myvar); //结果为hello world(从somthing.jsp来的)
}
somthing.jsp:(其实我会的是PHP但是知道内点JSP)
<%
out.print ("hello world");
>%
如果是像容1楼那样<param name="FlashVars" value="somevar=123" />
就在第一帧写
var myvar;
myvar=stage.loaderInfo.parameters["somevar"];
trace(myvar);//结果为123
C. JSP 页面的执行过程包括哪些步骤
JSP执行过程,
1. 用户请求JSP页面(HTTP请求)
2. web server中的servlet容器发现URL中有JSP后缀, 就调用JSP容器来处理
3. 如果此页面是第一次被请求, JSP容器要定位JSP页面文件并解释它,
解释的过程包括: 将JSP源文件处理成servlet代码(java), 以及编译java文件生成servlet的call文件.
说明: JSP解释器生成的servlet类是实现了java.servlet.jsp.HttpJspPate接口的类(由JSP容器提供)的一个子类, 这个servlet类叫做页面实现类(JSP页面实例);
4. JSP容器运行页JSP页面实例, 此时servlet(即JSP页面实例)就会出来HTTP请求, 生成对于的HTTP响应并传回给客户端. 如果此页面不是第一次被请求, 则跳过3, 直接跳到4.
5. 结束