一、目录结构
使用idea创建一个简单的JSP进行分析,具体流程参考Intellij idea创建javaWeb,同时web项目的部署阅读博客Web部署
- src:保存java的源代码;
- web:web项目核心,部署的时候,就是把目录下所有文件拷贝到Tomcat中
- classes目录用于存放编译后的class文件;
- lib用于存放依赖的jar包。
- IntelliJ 默认的部署目录是当前工程目录下的 out 文件夹
- 每次访问页面记得带上xxx.jsp后缀
二、九大内置对象
JSP九大内置对象分为四类:
- 输入输出对象:out对象、response对象、request对象
- 通信控制对象:pageContext对象、session对象、application对象
- Servlet对象:page对象、config对象
- 错误处理对象:exception对象
九大内置对象作用:
- out对象:用于向客户端、浏览器输出数据;
- request对象: 该对象代表了客户端的请求信息,主要用于接受通过HTTP协议传送到服务器的数据;
- response对象:对客户端的响应,主要是将JSP容器处理过的对象传回到客户端。response对象也具有作用域,它只在JSP页面内有效。
- exception对象:封装了JSP程序执行过程中发生的异常和错误信息。
- config对象:封装了应用程序的配置信息。
- page对象:指向了当前JSP页面本身。
- session对象:用来保存会话信息(跟踪会话),例如,一个网站登陆,网站所有页面都能使用登陆用户的信息。会话是代表用户第一次进入当前系统直到退出系统或关闭浏览器,在此期间与服务器的一系列交互。
- application对象:代表了当前应用程序的上下文,可以在不同的用户之间共享信息。
- pageContext对象:提供了对JSP页面所有对象以及命名空间的访问,它相当于页面中所有其他对象功能的最大集成者,即使用它可以访问到本页面中所有其他对象。
具体分析阅读JSP九大内置对象
三、四大作用域
-
page范围:在一个页面内保存属性,跳转之后无效(当前页面有效时间);
-
request范围:在一次服务请求范围内,服务器跳转后依然有效(HTTP请求开始到结束这段时间);
-
Session范围:在一次会话范围内,无论何种跳转都可以使用,但是新开浏览器无法使用(HTTP会话开始到结束这段时间);
-
Application范围:在整个服务器上保存,所有用户都可以使用(服务器启动到停止这段时间)。
四、Servlet
1、Servlet生命周期分为三个阶段:
- 1、初始化调用
inti()
方法;(第一次访问) - 2、响应客户端请求阶段调用service;(每次请求)
- 3、终止阶段调用
destroy()
。(被销毁)
2、servlet工作过程:
具体阅读Servlet入门总结
五、Web MVC
M 代表 模型(Model)
V 代表 视图(View)
C 代表 控制器(controller)
模型是什么呢? 模型就是数据,就是dao,bean
视图是什么呢? 就是网页, JSP,用来展示模型中的数据
控制器是什么? 控制器用来把不同的数据,显示在不同的视图上。 这个例子的,Servlet就是充当控制器的角色,把Hero对象,显示在JSP上。