servlet概论http://www.iteedu.com/webtech/j2ee/javaservletsbczn/1.php

本文详细介绍了Java Servlet的概念、用途及其优势。Servlet作为服务器端的组件,相较于Applet,拥有持久性、平台无关性、可扩展性和安全性等独特特点。Servlet通过与Web服务器的交互,为客户端提供响应,从而实现更复杂的服务和功能。
随着Internet的发展,客户机/服务器计算方面的许多新技术应运而生,其中最为瞩目的就是Java。Java不单定义了一种计算机语言,而且提供了一整套客户机/服务器解决方案,在这个方案中,程序可以自动地下载到客户端并执行。过去,大家更多的是关注在客户端上开发applet和图形用户界面(Graphical User Interface,GUI)组件。applet的确是客户机/服务器计算环境的重要组成部分,但是它仅仅是问题的一半。现在,我们就要深入地了解问题的另外一面——servlet。

1.1 什么是servlet

  servlet可以被认为是服务器端的applet。servlet被Web服务器加载和执行,就如同applet被浏览器加载和执行一样。servlet从客户端(通过Web服务器)接收请求,执行某种作业,然后返回结果。

使用servlet的基本流程如下:

·客户端(很可能是Web浏览器)通过HTTP提出请求。

·Web服务器接收该请求并将其发给servlet。如果这个servlet尚未被加载,Web服务器将把它加载到Java虚拟机并且执行它。 ·servlet将接收该HTTP请求并执行某种处理。

·servlet将向Web服务器返回应答。

·Web服务器将从servlet收到的应答发送给客户端。

由于servlet是在服务器上执行,通常与applet相关的安全性的问题并不需实现。servlet使相当数量的不可能或者至少是很难由applet实现的功能的实现成为可能。与现有系统通过CORBA,RMI,socket和本地(native)调用的通信就是其中的一些例子。另外,一定要注意:Web浏览器并不直接和servlet通信,servlet是由Web服务器加载和执行的。这意味着如果你的Web服务器有防火墙保护,那么你的servlet也将得到防火墙的保护。

1.2 为什么要使用servlet

  最起码,servlet可以很好地替代公共网关接口(Common Gateway Interface,CGI)脚本。通常CGI脚本是用Perl或者C语言编写的,它们总是和特定的服务器平台紧密相关。而servlet是用Java编写的,所以它们一开始就是平台无关的。这样,Java编写一次就可以在任何平台运行(write once,run anywhere)的承诺就同样可以在服务器上实现了。servlet还有一些CGI脚本所不具备的独特优点:

■servlet是持久的。servlet只需Web服务器加载一次,而且可以在不同请求之间保持服务(例如一次数据库连接)。与之相反,CGI脚本是短暂的、瞬态的。每一次对CGI脚本的请求,都会使Web服务器加载并执行该脚本。一旦这个CGI脚本运行结束,它就会被从内存中清除,然后将结果返回到客户端。CGI脚本的每一次使用,都会造成程序初始化过程(例如连接数据库)的重复执行。

■servlet是与平台无关的。如前所述,servlet是用Java编写的,它自然也继承了Java的平台无关性。

■servlet是可扩展的。由于servlet是用Java编写的,它就具备了Java所能带来的所有优点。Java是健壮的、面向对象的编程语言,它很容易扩展以适应你的需求。servlet自然也具备了这些特征。

■servlet是安全的。从外界调用一个servlet的惟一方法就是通过Web服务器。这提供了高水平的安全性保障,尤其是在你的Web服务器有防火墙保护的时候。

■setvlet可以在多种多样的客户机上使用。由于servlet是用Java编写的,所以你可以很方便地在HTML中使用它们,就像你使用applet一样。在本书中您将看到这一点。 使用servlet的方式多得超出你的想象。如果考虑到你在服务器上所能访问到的所有服务(诸如数据库服务器和老的系统),使用servlet的方式实际上可能是无限的。

1.3 编写servlet需要些什么

  JavaSoft(Sun Microsystem的Java软件部)尽量地使servlet开发能够既方便又快捷。Java Servlets开发工具包(JSDK)就是他们努力的结晶。你可以从JavaSoft的主页(http://java.sun.com)上下载该软件。

从1.2版以后,JSDK将成为Java开发工具包(JDK)的组成部分。如果你仍然在使用JDK1.1,你就不得不另外再下载JSDK。

在JSDK中包含了Java Servlet API,Java Servlet API是标准的Java扩展API。

这意味着,JSDK不是Java核心框架的组成部分,因而可以由提供商将其作为附加包来提供。而Java核心框架是所有使用Java的产品所必须包含的。在Javax.servlet包中提供了Servlet API。

1.4 运行servlet要做些什么

 如前所述,运行servlet的全部需求就是一个支持Servlet API的Web服务器。最初的产品就是JavaSoft提供的Java Web服务器。第2章专门介绍Java Web服务器的配置和特征。

表1.1和1.2给出了第三方厂商提供的Java Web服务器的实现以及支持Servlet API的附件。我自己喜欢使用Live Software的JRun。 表1.1 支持Java Servlet的第三方服务器产品
━━━━━━━━━━━━━━━━━━━━━━━━━
厂商       产品
─────────────────────────
Apache    Apache JServ
ATG      Dynamo Application Server
Cybotics   Cybotics Search Engine
IBM      Internet Connection Server
KonaSoft   KonaSoft Enterprise Server
Lotus     Domino Go Webserver
Novocode   NetForge Web Server
O'Reilly   WebSite Professional
Tandem    iTP WebServer
W3C      Jigsaw HTTP Server
Weblogic   Tengah Application Server
━━━━━━━━━━━━━━━━━━━━━━━━━

   表1.2 支持Java Servlet的第三方附件产品
━━━━━━━━━━━━━━━━━━━━━━━━━
厂商       产品
─────────────────────────
IBM      Servlet Express
Live Software JRun
New Atlanta  ServletExec
Unicom     Servlet CGI Development Kit
━━━━━━━━━━━━━━━━━━━━━━━━━

同时你还要记住,为了使用servlet,你还必须具备某种能够调用servlet的客户端应用程序。我们将会看到,最基本的客户端应用程序就是HTML。HTML是一种轻量级的应用程序,而且它得到了所有的Web浏览器的广泛支持。如果你使用了支持Java的Web浏览器(注意所支持的Java版本),对applet的使用将会给你带来巨大好处。使用applet,不但帮助您解决了软件的发布和可移植性问题,而且还是一种开发交互式的客户机/服务器系统的很好的方法。

1.5 小结

  上面我们对Java Servlet有了大致的了解——servlet是什么、如何使用以及如何编写和运行servlet。 在下一章中,我们将了解JavaSoft的Java Web服务器是第一种支持servlet的服务器,同时它也是industrial-strength Java应用程序的一个很好的实例。

基于iTransformer-BiGRU-KAN多模型融合的滚动轴承剩余寿命预测研究(Python代码实现)内容概要:本文提出了一种基于iTransformer-BiGRU-KAN多模型融合的滚动轴承剩余寿命预测方法,旨在通过结合多种先进深度学习模型的优势,提升在复杂工况下的预测精度与鲁棒性。该方法利用iTransformer捕捉长期时间序列中的全局依赖关系,通过BiGRU模型提取双向时序特征,最后引入KAN(Kernel Attention Network)增强非线性映射与关键特征的自适应加权能力,实现对轴承退化过程的精准建模。文中详细介绍了模型架构设计、训练流程及在公开数据集上的实验验证,结果表明该融合模型相比单一模型在预测精度和稳定性方面均有显著提升。; 适合人群:具备一定机器学习与深度学习基础,从事设备故障诊断、工业大数据分析或智能运维相关领域的研究人员及工程技术人员,尤其适合研究生及以上学历或有相关项目经验的专业人员。; 使用场景及目标:①应用于工业设备状态监测与预测性维护系统中,实现对滚动轴承等关键部件剩余寿命的精准预测;②为复杂时间序列回归任务提供多模型融合的设计思路与技术参考;③推动深度学习在智能制造与工业物联网领域的落地应用。; 阅读建议:建议读者结合Python代码实现部分,深入理解各子模型的接口设计与融合逻辑,重点关注特征融合机制与注意力权重的可视化分析,以便在实际项目中灵活调整与优化模型结构。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值