整理总结-jsp与servlet的基本关系

1、jsp-->web容器-->servlet-->加载进容器的虚拟机执行-->输出执行结果给浏览器端
  在这个过程,所有位于<%%>之外的值,都被认为是out.println()中的内容进行直接输出。详细理解看代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<html>
<%
    //例子说明:servlet和jsp的关系
    boolean b = false;
    if(b){
%>
    这里是内容一
<%
    }else{
%>
    这里是内容二
<%
    }
%>
   
  <body>
    jsp_servlet. <br>
  </body>
</html>

  上面的代码和下面的代码一个意思

复制代码
<html>
<%
//例子说明:servlet和jsp的关系
    boolean b = false;
    if(b){
    out.println("这里是内容一");
    }else{
    out.println("这里是内容二");
    }
%>
  <body>
    This is my JSP page. <br>
  </body>
</html>
复制代码

<%%>标签外的一切字符,jsp的web容器不会特殊处理,只是单纯地放进输出流out(printWriter)中输出给浏览器

标签中的内容,是java代码,web容器处理完后,返回结果给浏览器

标签外和标签内的所有字符经过web容器处理后,得出一个html文件,这是浏览器所接收到的最终文件

2、执行说明

  顺序:浏览器请求-->jsp文件-->web服务器-->解析jsp为java文件-->容器j的re检查java文件是否有编译错误-->编译java文件,得到.class文件-->jvm加载执行-->响应浏览器

  web容器解析jsp时,一般先检查是否已经存在了最新(表明jsp文件并没有被改变)编译的文件某某servet.class,如果是,则不重新编译jsp文件,否则重新编译jsp文件。

 

posted @ 2022-12-22 16:03  小彭先森  阅读(45)  评论(0编辑  收藏  举报