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文件。
标签:总结,文件,浏览器,web,--,jsp,servlet From: https://www.cnblogs.com/pengsuoqun123/p/16998972.html