为什么要使用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...

面试题 相关文章推荐
PHP开发的一般流程
Aug 13 面试题
JSF面试题:Jsf中导航的标签是什么
Apr 20 面试题
JSF如何进行表格处理及取值
Aug 06 面试题
介绍java中初始化块的使用
Sep 11 面试题
SQL Server面试题
Oct 17 面试题
一道SQL面试题
Dec 31 面试题
介绍一下OSI七层模型
Jul 03 面试题
Does C# support multiple inheritance? (C#支持多重继承吗)
Jan 04 面试题
分别介绍一下Session Bean和Entity Bean
Mar 13 面试题
介绍一下EJB的分类及其各自的功能及应用
Aug 23 面试题
Python文件操作的面试题
Jun 22 面试题
Delphi笔试题
Nov 14 面试题
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
php中echo()和print()、require()和include()等易混淆函数的区别
2012/02/22 PHP
php检测图片主要颜色的方法
2015/07/01 PHP
Discuz!X中SESSION机制实例详解
2015/09/23 PHP
Yii CGridView用法实例详解
2016/07/12 PHP
PHP中new static()与new self()的比较
2016/08/19 PHP
使用PHPExcel实现数据批量导出为excel表格的方法(必看)
2017/06/09 PHP
PHP如何解决微信文章图片防盗链
2020/12/09 PHP
JavaScript与C# Windows应用程序交互方法
2007/06/29 Javascript
js 创建书签小工具之理论
2011/02/25 Javascript
jquery实现非叠加式的搜索框提示效果
2014/01/07 Javascript
js验证电话号码与手机支持+86的正则表达式
2014/01/23 Javascript
JavaScript遍历table表格中的某行某列并打印其值
2014/07/08 Javascript
js不能获取隐藏的div的宽度只能先显示后获取
2014/09/04 Javascript
借助node实战JSONP跨域实例
2017/03/30 Javascript
基于js 各种排序方法和sort方法的区别(详解)
2018/01/03 Javascript
实例解析ES6 Proxy使用场景介绍
2018/01/08 Javascript
laravel-admin 与 vue 结合使用实例代码详解
2019/06/04 Javascript
jQuery中DOM常见操作实例小结
2019/08/01 jQuery
微信接入之获取用户头像的方法步骤
2019/09/23 Javascript
[01:50:49]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Aster BO3 第三场 1月24日
2021/03/11 DOTA
Python实现图片拼接的代码
2018/07/02 Python
详解重置Django migration的常见方式
2019/02/15 Python
Django学习笔记之为Model添加Action
2019/04/30 Python
解决pycharm中导入自己写的.py函数出错问题
2020/02/12 Python
python名片管理系统开发
2020/06/18 Python
python程序如何进行保存
2020/07/03 Python
Python 通过爬虫实现GitHub网页的模拟登录的示例代码
2020/08/17 Python
详解python模块pychartdir安装及导入问题
2020/10/22 Python
推荐一些比较有用的css3新属性
2014/11/11 HTML / CSS
前端面试必备之html5的新特性
2017/09/05 HTML / CSS
iRobot官网:改变生活的家用机器人品牌
2016/09/20 全球购物
彪马俄罗斯官网:PUMA俄罗斯
2019/07/13 全球购物
服装行业创业计划书范文
2014/02/05 职场文书
警察先进个人事迹材料
2014/05/16 职场文书
2015年幼儿园个人工作总结
2015/04/25 职场文书
SpringBoot 集成短信和邮件 以阿里云短信服务为例
2022/04/22 Java/Android