-
动态资源和静态资源
-
Servlet体系
-
Serviet生命周期(重点)
本章内容:
一、动态资源和静态资源
-
静态资源:html css js 图片
在静态Web程序中,客户端使用Web浏览器(IE、FireFox等)经过网络(Network)连接到服务器上,使用HTTP协议发起一个请求(Request),告诉服务器我现在需要得到哪个页面,所有的请求交给Web服务器,之后WEB服务器根据用户的需要,从文件系统(存放了所有静态页面的磁盘)取出内容。之后通过Web服务器返回给客户端,客户端接收到内容之后经过浏览器渲染解析,得到显示的效果。
静态web无法连接数据库;
静态web资源开发技术:HTML
请求静态资源,从服务器上直接访问到文件,读取文件中的内容,将文件中的内容响应给客户端
-
动态资源:servlet|jsp
如果客户端请求的是动态资源(.jsp、.asp/.aspx、.php),则先将请求转交给WEB Container(WEB容器),在WEB Container中连接数据库,从数据库中取出数据等一系列操作后动态拼凑页面的展示内容,拼凑页面的展示内容后,把所有的展示内容交给WEB服务器,之后通过WEB服务器将内容发送回客户端浏览器进行解析执行。
动态资源需要在服务器端运行,响应给客户端是服务器端代码的运行结果
二、Servlet体系
三、Servlet生命周期(理解)
-
启动tomcat:环境准备,解析web.xml文件(获取配置信息,验证文件内容的配置格式是否正确)
如果配置有问题,在服务器启动的时候就会报错
-
请求服务器:
-
阶段 时机 调用的方法(钩子)
-
实例化 第一次向服务器发送请求或者服务器上没有servlet的对象的时候 无参数构造
-
初始化 第一次向服务器发送请求或者服务器上没有servlet的时候,实例化之后 init(config)
-
服务阶段 每次向服务器发送请求的时候 service()
-
销毁阶段 服务停止的时候,项目重新加载的时候 destroy
-
-
注意事项:
-
实例化,初始化的时机可能会发生改变,会改变为应用启动的时候
如果配置了load-on-startup,那么将会在服务启动的时候进行实例化及初始化
在servlet的配置当中,5的含义是:
标记容器是否在启动的时候就加载这个servlet。
当值为0或者大于0时,表示容器在应用启动时就加载这个servlet,实例化 初始化
当是一个负数时或者没有指定时,则指示容器在该servlet被选择(请求到达的时候)时才加载 实例化 初始化。
正数的值越小,启动该servlet的优先级越高
-
初始化阶段调用的时候有参数的init方法,参数的类型:ServletConfig,作用读取Servlet的初始化配置信息
读取信息:
-
service每次请求到达会执行,每次执行之前会创建请求对象及响应对象
-
相同类型的servlet对象在服务器运行期间只有一个。
-