概念理解
来源:互联网 发布:马哥linux培训 编辑:程序博客网 时间:2024/05/18 00:49
web发展史:
从最初的静态网页到动态网页,动静概念的意义在于是否与服务器进行交互;
传统CGI:(通用网关接口Common Gateway Interface)实现了客户端与服务器端的交互;
⑴通过Internet把用户请求送到web服务器。
⑵web服务器接收用户请求并交给CGI程序处理。
⑶CGI程序把处理结果传送给web服务器。
⑷web服务器把结果送回到用户。
applet的出现:嵌套在HTML网页中,没有程序入口(main方法),需要支持java协议的浏览器作为容器运行,拥有init()和destroy()方法,被下载到客户端运行,与网络无关;
servlet的出现:servlet是运行在服务器上的java小程序,同样没有main()方法,由于CGI对机器内存要求高,相较于CGI处理客户端请求,客户端每次访问需要创建一个进程,而servlet则只需要通过程序创建一个线程,对内存的消耗小。生命周期如下:
- 客户端请求该 Servlet;
- 加载 Servlet 类到内存;
- 实例化并调用init()方法初始化该 Servlet;
- service()(根据请求方法不同调用doGet() 或者 doPost(),此外还有doHead()、doPut()、doTrace()、doDelete()、doOptions()、destroy()。
- 加载和实例化 Servlet。这项操作一般是动态执行的。然而,Server 通常会提供一个管理的选项,用于在 Server 启动时强制装载和初始化特定的 Servlet。
Server 创建一个 Servlet的实例
第一个客户端的请求到达 Server
Server 调用 Servlet 的 init() 方法(可配置为 Server 创建 Servlet 实例时调用,在 web.xml 中 <servlet> 标签下配置 <load-on-startup> 标签,配置的值为整型,值越小 Servlet 的启动优先级越高)
一个客户端的请求到达 Server
Server 创建一个请求对象,处理客户端请求
Server 创建一个响应对象,响应客户端请求
Server 激活 Servlet 的 service() 方法,传递请求和响应对象作为参数
service() 方法获得关于请求对象的信息,处理请求,访问其他资源,获得需要的信息
service() 方法使用响应对象的方法,将响应传回Server,最终到达客户端。service()方法可能激活其它方法以处理请求,如 doGet() 或 doPost() 或程序员自己开发的新的方法。
对于更多的客户端请求,Server 创建新的请求和响应对象,仍然激活此 Servlet 的 service() 方法,将这两个对象作为参数传递给它。如此重复以上的循环,但无需再次调用 init() 方法。一般 Servlet 只初始化一次(只有一个对象),当 Server 不再需要 Servlet 时(一般当 Server 关闭时),Server 调用 Servlet 的 destroy() 方法
jsp的出现:服务器端语言,jsp出现之前,servlet请求返回的内容只能通过HTML拼接形式显示出来,jsp通过标签对的形式与HTML语言区别,通过服务器端的翻译成为真正的HTML语言用于界面展示。将生成的内容和展示效果分离,复用性高
阅读全文
0 0
- 概念理解
- 概念理解
- Spring:1、概念理解
- CMS概念的理解
- BPEL概念的理解
- 句柄的概念理解!!!
- 编程概念的理解
- BPO概念的理解
- 理解XML的概念
- FPS概念的理解
- 彻底理解内存概念- -
- C#中的概念理解
- BPO概念的理解
- 反射概念理解
- 容器的概念理解
- Spring概念理解
- ERP 概念理解----
- spring 概念理解(资料)
- JAVA 之 file 的 getPath、getAbsolutePath和getCanonicalPath的不同
- 类模板
- Treap的实现方法 [BZOJ 3224]
- MP3每一帧的采样个数和采样率如何理解?(神文)
- salesforce中如何自定义picklist值的顺序
- 概念理解
- java体系中,volatile关键字的作用
- MFC双缓冲绘图解决界面闪烁问题
- iOS APPstore 审核加速
- 数据结构之图
- mybatis笔记-多个参数查询报BindingException异常
- 数据库三大范式(Normal Form)
- Fragment相关源码解析三——状态保存与恢复
- EXTJS 开始日期和开始时间,结束日期和结束时间,当前日期和当前时间之间的比较