为什么要使用servlet


Posted in 面试题 onJanuary 17, 2016
servlet可以很好地替代公共网关接口(Common Gateway Interface,CGI)脚本。通常CGI脚本是用Perl或者C语言编写的,它们总是和特定的服务器平台紧密相关。而servlet是用Java编写的,所以它们一开始就是平台无关的。这样,Java编写一次就可以在任何平台运行(write once,run anywhere)的承诺就同样可以在服务器上实现了。servlet还有一些CGI脚本所不具备的独特优点:
1、servlet是持久的。servlet只需Web服务器加载一次,而且可以在不同请求之间保持服务(例如一次数据库连接)。与之相反,CGI脚本是短暂的、瞬态的。每一次对CGI脚本的请求,都会使Web服务器加载并执行该脚本。一旦这个CGI脚本运行结束,它就会被从内存中清除,然后将结果返回到客户端。CGI脚本的每一次使用,都会造成程序初始化过程(例如连接数据库)的重复执行。
2、servlet是与平台无关的。如前所述,servlet是用Java编写的,它自然也继承了Java的平台无关性。
3、servlet是可扩展的。由于servlet是用Java编写的,它就具备了Java所能带来的所有优点。Java是健壮的、面向对象的编程语言,它很容易扩展以适应你的需求。servlet自然也具备了这些特征。
4、servlet是安全的。从外界调用一个servlet的惟一方法就是通过Web服务器。这提供了高水平的安全性保障,尤其是在你的Web服务器有防火墙保护的时候。
5、setvlet可以在多种多样的客户机上使用。由于servlet是用Java编写的,所以你可以很方便地在HTML中使用它们,就像你使用applet一样。在本书中您将看到这一点。

Tags in this post...

面试题 相关文章推荐
说说你所熟悉或听说过的j2ee中的几种常用模式?及对设计模式的一些看法
May 24 面试题
数据库面试要点基本概念
Oct 31 面试题
.NET方向面试题
Nov 20 面试题
介绍一下如何利用路径遍历进行攻击及如何防范
Jan 19 面试题
成都思必达公司C#程序员招聘面试题
Jun 26 面试题
简述进程的启动、终止的方式以及如何进行进程的查看
Jul 12 面试题
软件生产职位结构化面试主要考察要素及面试题库
Jun 12 面试题
EJB的几种类型
Aug 15 面试题
介绍一下MYSQL常用的优化技巧
Oct 25 面试题
几个MySql的面试题
Apr 22 面试题
如何清空Session
Feb 23 面试题
初级Java程序员面试题
Mar 03 面试题
Servlet的实例是在生命周期什么时候创建的?配置servlet最重要的是什么?
May 30 #面试题
Java servlet面试题
Mar 04 #面试题
JSP&Servlet技术面试题
May 21 #面试题
Servlet如何得到客户端机器的信息
Oct 17 #面试题
HttpServlet类中的主要方法都有哪些?各自的作用是什么?
Mar 16 #面试题
Servlet如何得到服务器的信息
Dec 22 #面试题
Servlet方面面试题
Sep 28 #面试题
You might like
windows下升级PHP到5.3.3的过程及注意事项
2010/10/12 PHP
利用php实现一周之内自动登录存储机制(cookie、session、localStorage)
2016/10/31 PHP
php使用preg_match()函数验证ip地址的方法
2017/01/07 PHP
php实现网页上一页下一页翻页过程详解
2019/06/28 PHP
jQuery $.get 的妙用 访问本地文本文件
2012/07/12 Javascript
JS上传图片前的限制包括(jpg jpg gif及大小高宽)等
2012/12/19 Javascript
JavaScript动态改变div属性的实现方法
2015/07/22 Javascript
JavaScript给input的value赋值引发的关于基本类型值和引用类型值问题
2015/12/07 Javascript
Node.js插件安装图文教程
2016/05/06 Javascript
checkbox批量选中,获取选中项的值的简单实例
2016/06/28 Javascript
AngularJS 服务详细讲解及示例代码
2016/08/17 Javascript
Node.js开启Https的实践详解
2016/10/25 Javascript
nodejs学习笔记之路由
2017/03/27 NodeJs
JavaScript Drum Kit 指南(纯 JS 模拟敲鼓效果)
2017/07/23 Javascript
windows下更新npm和node的方法
2017/11/30 Javascript
js读取本地文件的实例
2017/12/22 Javascript
Vue.js 的移动端组件库mint-ui实现无限滚动加载更多的方法
2017/12/23 Javascript
JS中原始值和引用值的储存方式示例详解
2018/03/23 Javascript
jQuery Migrate 插件用法实例详解
2019/05/22 jQuery
浅析Vue下的components模板使用及应用
2019/11/27 Javascript
Python实现子类调用父类的方法
2014/11/10 Python
怎样使用Python脚本日志功能
2016/08/14 Python
Python计算两个日期相差天数的方法示例
2017/05/23 Python
浅谈使用Python变量时要避免的3个错误
2017/10/30 Python
python实现树形打印目录结构
2018/03/29 Python
Python自定义函数实现求两个数最大公约数、最小公倍数示例
2018/05/21 Python
python科学计算之numpy——ufunc函数用法
2019/11/25 Python
详解字符串在Python内部是如何省内存的
2020/02/03 Python
css3 按钮 利用css3实现超酷下载按钮
2013/03/18 HTML / CSS
CSS3实现的闪烁跳跃进度条示例(附源码)
2013/08/19 HTML / CSS
CSS 说明横向进度条最后显示文字的实现代码
2020/11/10 HTML / CSS
应届生幼儿园求职信
2013/11/12 职场文书
中华魂演讲稿
2014/05/13 职场文书
四风问题个人对照检查材料
2014/09/26 职场文书
2019新员工心得体会
2019/06/25 职场文书
git中cherry-pick命令的使用教程
2022/06/25 Servers