JavaWeb-JSP原理部分

JSP(Java Server Page)本质是Html的基础上添加java脚本,构成JSP页面。

JSP所充当的作用:客户端(浏览器)向服务器发送请求,JSP接收从客户端发送的请求,然后传递给Servlet,Servlet响应之后将响应请求发送给JSP,然后JSP再发送给客户端。简单来说,JSP从中充当了传递作用。其优点就是可以让Servlet通过response方法中的getWriter.print("")中不断复制粘贴HTML页面代码,这一部分JSP都能自动的完成此部分工作。

JSP和Servlet之间的工作流程
JSP页面中提交表单和或者是点击超链接,将请求数据通过JSP发送给Servlet,Servlet将请求数据处理后的数据放在request域中,然后JSP从request域中获取数据展示到HJSP页面中。JSP和Servlet之间的工作流程
JSP原理
*JSP是一种特殊的Servlet

当JSP页面第一次被访问,服务器将JSP编译为Java文件(这个Java其实是一个Servlet类)
然后将Java编译成.class
创建该类的对象
调用该对象的Service()方法
第二次调用该JSP时,直接调用Service()方法

在这里插入图片描述在Tomcat的work目录下找到某Web项目中的JSP页面,可以看出JSP实际上是Java文件,因此会有编译后的.class文件。
例如form.jsp页面的Java文件,该Java文件中部分代码如下
在这里插入图片描述
在.jsp文件中,<% …%>中的代码,也就是java类中的方法。

在这里插入图片描述

JSP中有九大不需要创建实例直接使用的对象。

在这里插入图片描述
jsp中其他部分都是通过response方法中的write()打印出对应的HTML部分
out.print()中输出的是<%= …%>中的值

由此可以看出服务器最后将JSP转化为Java文件,然后编译Java文件为.class,最后创建对象,调用对象service()方法完成响应。
在这里插入图片描述
因此说Java中万物皆对象,JSP页面中的内容,服务器都会把它编译成相应的Java对象,JSP是特殊的Servlet。
静态页面无需做出变动,也就不需要Java去处理,而Java因此可以只处理JSP中动态的部分。

发布了27 篇原创文章 · 获赞 1 · 访问量 2031

猜你喜欢

转载自blog.csdn.net/yangyiyun199863/article/details/104272735
今日推荐