关于JSP

我和web后台那点儿不得不说的事?不存在的,我不认识它-_-

为了了解Java web后台运行原理,就参考了很多博主的文章,大多博主都会加以代码进行阐述,对一个小白来讲真是头大,下面我就以一种比较简单的方式总结一下那点儿不得不了解的事儿!

先贴上原文链接:

https://blog.csdn.net/jack__frost/article/details/65449643

http://www.cnblogs.com/mlloc-clove/p/3549777.html

JSP全名为Java Server Pages,中文名叫java服务器页面,其根本是一个简化的Servlet设计,它是一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML文件中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件,后缀名为(*.jsp)。

JSP的工作原理图:

当一个JSP文件第一次被请求的时候,JSP引擎(本身也是一个Servlet)首先会把这个JSP文件转换成一个Java源文件。在转换过程中如果发现JSP文件有语法错误,转换过程将中断,并向服务端和客户端输出出错信息;如果转换成功,JSP引擎用javac把该Java源文件编译成相应的.class文件并将该.class文件加载到内存中。

其次创建一个该Servlet的实例,并执行该实例的jspInit()方法(jspInit()方法在Servlet的生命周期中只被执行一次)。

然后创建并启动一个新的线程,新线程调用实例的jspService()方法。(对于每一个请求,JSP引擎会创建一个新的线程来处理该请求。如果有多个客户端同时请求该JSP文件,则JSP引擎会创建多个线程,每个客户端请求对应一个线程)。

浏览器在调用JSP文件时,Servlet容器会把浏览器的请求和对浏览器的回应封装成HttpServletRequest和HttpServletResponse对象,同时调用对应的Servlet实例中的jspService()方法,把这两个对象作为参数传递到jspService()方法中。

jspService()方法执行后会将HTML内容返回给客户端。

原文地址:https://www.cnblogs.com/nictang/p/8649471.html