1 CGI Servlet JSP
(1)CGI (Common Gateway Interface 公共网管接口 ),他能够提供页面的动态生成,实现了网站的动态性。
缺点:1-需要为每一个请求启动一个CGI程序的系统进程。如果请求频繁会带来很大的开销。
2-需要为每一个请求加载和运行一个CGI程序
3-需要重复编写处理网络协议的代码及其编码
(2)Servlet 改进的CGI
jJava可以在运行的时候动态的加载,所以可以用新的代码来处理新的请求。这样就可以只启动一次服务器,加载一次JVM。
优点:1-只要启动一个操作系统进程
2-多个请求做同样处理的时候只要加载一个类
3-动态加载的类可以实现对网络协议以及请求解码的代码共享。
4-Servlet 能直接和WEB服务器交互,二普通的CGI 程序不能。
缺点: Servlet生成的HTML是在java类中切入的,对页面做任何改动都要编译Servlet源文件。
(3)JSP Servlet的模板
JSP (Java Server Pages)是一种实现静态和动态混合编码的技术,是Servlet的一个扩展。服务器处理JSP页面主要经过3个步骤,翻译 编译 请求。
(1)CGI (Common Gateway Interface 公共网管接口 ),他能够提供页面的动态生成,实现了网站的动态性。
缺点:1-需要为每一个请求启动一个CGI程序的系统进程。如果请求频繁会带来很大的开销。
2-需要为每一个请求加载和运行一个CGI程序
3-需要重复编写处理网络协议的代码及其编码
(2)Servlet 改进的CGI
jJava可以在运行的时候动态的加载,所以可以用新的代码来处理新的请求。这样就可以只启动一次服务器,加载一次JVM。
优点:1-只要启动一个操作系统进程
2-多个请求做同样处理的时候只要加载一个类
3-动态加载的类可以实现对网络协议以及请求解码的代码共享。
4-Servlet 能直接和WEB服务器交互,二普通的CGI 程序不能。
缺点: Servlet生成的HTML是在java类中切入的,对页面做任何改动都要编译Servlet源文件。
response.setContentType("text/html");
PrintWrite out=response.getWriter();
out.println("<html>");
....
out.println("</html>");
(3)JSP Servlet的模板
JSP (Java Server Pages)是一种实现静态和动态混合编码的技术,是Servlet的一个扩展。服务器处理JSP页面主要经过3个步骤,翻译 编译 请求。
![点击查看源网页](https://i-blog.csdnimg.cn/blog_migrate/6a6f2d63e88a982b4a18eaba2451d8b2.jpeg)