Step1.情景概要
Hello,小伙伴们,好久不见,之前跟大家分享了,相信大家对于这两块内容有了相对清晰的个人认识了,既然我们讲到了MVC,这里我们接着这块内容继续往下深入,今天我们来看看MVC 中的V-VIEW 即我们所说的视图层。
Step2.视图技术
对于我们WEB开发人员来说,视图的概念应该都不会很陌生了,我们在浏览网页时见到的各种形式的页面内容,背后都离不开我们所用的视图技术,对于JAVA Web 开发人员来讲,页面展示实际上就是模板+数据=页面内容,所有的web页面基本离不开这两点,而我们常用的视图表现层技术不考虑这种H5页面的话,目前市面上用的比较多的基本上是JSP、Freemarker,或者Velocity,对于这三种常见的视图表现层技术,这里先来说说JSP。
Step3.JSP概念与应用场景
JSP(java server page ),故名思议,即在服务器端执行的页面,其实质为一个简化的servlet 它是在传统的网页HTML文件中插入Java程序段和JSP标记,从而形成JSP文件,后缀名为(*.jsp)。说了这么多实际上就是在HTML基础上加入JAVA 代码,运行在Tomcat(servlet)容器中的页面,最终项目发布后通过浏览器访问该页面后在浏览器输出的内容就是html ,是不是很简单呢。
这里对于JSP ,概念中提到JSP 实质上就是Servlet ,只是JSP的出现解决了Servlet 的一个痛点问题,就是Servlet 页面内容输出是相对麻烦,特别是涉及到复杂的页面样式控制与JS 时,这时Servlet 就相对变的心有余而力不足了哦,这时JSP的出现,解决了Serlvet 的这一痛点问题,即:JSP 作为视图展示层显示页面内容更加方便!那说到这,JSP既然是Servlet ,那JSP 究竟是怎么执行的呢?Step4.JSP执行过程剖析
这里在分析JSP 原理前,先来看下Serlvet 内部执行原理
- 客户端通过HTTP提出请求.
- Web服务器接收该请求并将其发给servlet。如果这个servlet尚未被加载,Web服务器将把它加载到Java虚拟机并且执行它。
- servlet将接收该HTTP请求并执行某种处理。
- servlet将向Web服务器返回应答。
- Web服务器将从servlet收到的应答发送给客户端。
- 用户通过浏览器发送请求
- tomcat服务器收到*.jsp请求,会到org.apache.jasper.servlet.JspServlet处理,(tomcat web.xml) 里有对应处理jsp 请求具体配置