13 JSP原理剖析

1 什么是JSP

新建一个JSPTest类实现HttpJspPage,重写对应的方法
可以发现 HttpJspPage 继承JspPage , JspPage 继承了Servlet
结论:JSP封装了Servlet,本质还是一个Servlet在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2 JSP是如何被Tomcat执行的

准备工作:创建一个Maven工程的web项目,那么默认首页就是index.jsp
启动Tomcat,浏览器显示Hello World
我们知道Tomcat只解析Java代码,那么我们猜想这些代码一定是被转换成了Java代码,不信往下看

<html>
<body>
<h2>Hello World!</h2>

<%
    String name = "duowei";
%>

name <%=name%>

</body>
</html>

我们去Idea系统目录看一下,在Tomcat执行JSP的时候究竟做了些什么?

在这里插入图片描述
在这里插入图片描述
我们看到了index_jsp.java 和 index_jsp.class 两个文件
在这里插入图片描述
打开Java我们发现我们熟悉的 Init 、 destory 、service
在这里插入图片描述
继续往下走,我们发现这些HTML标签被套上了Servlet的输出打印方法(渲染),那么如果没有JSP,我们要想输出HTML,也要这么麻烦的写 out.write()
在这里插入图片描述

3 总结

阅读上面内容,我们大致了解了,JSP就是Servlet的封装,Tomcat会帮助你生成Java类文件和Class文件

  • 用户请求JSP页面
  • Tomcat将JSP页面转化成Java文件
  • Tomcat再将Java文件编译成class文件
  • 最后Tomcat解析class文件
  • 解析的结果打包成response
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值