JSP运行原理
1、什么是jsp,它的作用又是什么
jsp页面本质上是一个Servlet程序,它的全称是Java server pages,是Java的服务器页面
它的作用主要是代替Servlet程序的回传的html页面数据,servlet程序回传html页面数据是比较繁琐的。
就比如在servlet程序中回传html页面数据,需要如下做:
@WebServlet("/a")
public class PrintHtml extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
resp.setContentType("text/html;charset=UTF-8");
PrintWriter writer = resp.getWriter();
writer.println("<html>");
writer.println("<head>");
writer.println("<title>Title</title>");
writer.println("</head>");
writer.println("<html>");
writer.println("<body>");
writer.println("<div style='height:100px;background:red;'>"+"登录成功");
writer.println("</div>");
writer.println("</body>");
}
}
还是简单的一个html页面回传,就需要大量代码,这样就比较繁琐。
2、jsp的组成
jsp=html + Java脚本 + jsp标签(指令)
Java脚本:
1、<% ……. %>:在这个里面书写Java代码片
2、<% = …… %>: 用于输出,输出一个表达式的结果
3、<%! ….%> :声明,用来创建类的成员变量和成员方法
3、jsp本质是什么
jsp其实就是本质上就是servlet程序
就是在我们第一次访问jsp页面时候,Tomcat服务器会帮我们把xxx.jsp页面翻译成Java源文件和对应的.class字节码文件
我们在运行idea时,在电脑上搜索下面路径就会出现文件
点开work目录一直点击就可以看到项目,当我们访问index.jsp页面时,我们可以在项目中出现org目录,这里Tomcat就会帮我们生成.java和.class文件
在.java文件中我们可以看到对应的xxx.jsp被写成一个xxx_jsp类继承extends org.apache.jasper.runtime.HttpJspBase这个类
在下面的代码中我们看到servlet程序回传html页面数据
所以总结起来就是jsp页面就是Servlet程序,而它本质上也是继承了HttpServlet的,而在这就是HttpJspBase继承了HttpServlet
在看一张图,就可以清楚看见关系:
还没有评论,来说两句吧...