jsp渲染

SP与Servlet什么关系?JSP和ASP什么关系?下面咱们一一来探讨。
 
第一个.jsp文件:
<html>
    <head>
           <title>HelloWorldJSP~</title>
    </head>
    <body>
           <%
                  out.println("HelloWorld");
           %>
    </body>html

</html>java

 

其实就是当你经过http请求一个JSP页面是,首先Tomcat会将JSP编译成为Servlet,而后执行Servlet.web

详细说说这个运行过程:浏览器

1,             首先web客户端发送URL请求给Tomcat。服务器得到请求,对请求字符串分析,若是后缀名是.jsp文件的,则Tomcat把调用JspServlet处理。JspServlet是缓存

2,             若是JSP文件第一次被调用,则会把jsp编译成servlet(编译后的servlet文件在tomcat下的work文件夹中,就是那个存放相似于缓存的文件夹),若是jsp不是第一次调用则不会被编译。Jsp文件在没有修改的状况下,只会编译一次。tomcat

3,             Tomcat调用service()方法编译jsp文件,建立一个.Java和.class文件。该java文件继承自父类HttpJspBase类。服务器

4,             建立HttpServletRequest类和HttpServletResponse类
5,             调用.java继承父类的HttpJspBase类方法service(request,response)
6,             在service方法里面调用jspService(request,reponse)方法,渲染html返回给客户端。jsp

因而可知,什么是渲染?就是把tomcat把jsp编译成servlet,而servlet会将以HTML格式返回给浏览器,这就是渲染。能够简单理解为:浏览器能够直接运行html文件(双击打开一个html文件,就能够在浏览器中运行),而不能直接运行jsp文件(双击打开一个jsp文件,它是不能够再浏览器中运行的。而若是某个jsp如index.jsp在某个工程如test中的WebContent路径下(不能放在WEB-INF中,由于WEB-INF下的文件是不容许直接访问的),而把test工程在tomcat服务器中运行,那么输入http://127.0.0.1:8080/tes/index.jsp就能够运行,并显示jsp页面的内容了),因此须要经过tomcat服务器将jsp转换成HTML格式,而后再返回给浏览器进行显示。因此渲染工做时tomcat服务器作的。.net

相关文章
相关标签/搜索