怎样浅谈Java Servlets与CGI程序

技术怎样浅谈Java Servlets与CGI程序怎样浅谈Java Servlets与CGI程序,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。从网络的早期阶

如何谈Java Servlets和CGI程序?我相信很多没有经验的人都不知所措。为此,本文总结了问题产生的原因及解决方法。希望你能通过这篇文章解决这个问题。

从网络的早期阶段,人们就希望他们的web服务器不仅能显示静态文档,而且通用网关接口(CGI)扩展了服务器的功能,代价是额外的处理。FastCGI将外部CGI处理过程与web服务器更紧密地集成在一起。此外,对于NSAPI和ISAPI等专有服务器API,它们以服务器插件的形式直接将外部进程集成到服务器中。现在有了Java Servlets,它们功能强大,可以快速替换您现有的CGI程序。

什么是Servlets?

正如applet扩展了web浏览器的功能一样,Servlets,一个Java组件,扩展了web服务器的功能。对于任何一种服务器端的处理,Servlets都可以作为服务器端的includes或者CGI程序(可以作为JavaSoft的Java Web服务器中的插件)。Servlets可以移植。与CGI和专有API模块不同,您可以使用Java的“一次编写,随处运行”机制来配置企业中的网络应用程序。Servlets也运行稳定。在Servlet中,您创建了一个数据库连接,下次访问Servlet时,该连接仍将存在,这与CGI程序不同。Servlets也是可扩展的,所以您可以使用面向对象的编程方法来减少开发时间。servlet可以在任何支持servlet的web服务器上运行。目前,Servlet SDK除了支持JavaSoft的Java web服务器外,还支持Netscape、Apache和IIS,以及大量的第三方Web服务器。

运行你的Servlet

一旦成功编写和编译了Servlet,就可以将其放在网络服务器中的Servlet别名目录中。就像服务器中的cgi-bin别名目录一样,一旦作为url的一部分被请求,放在Servlet目录中的任何文件都将作为Servlet执行。例如,BasicCGIServlet可以通过以下网址调用: http://mycompany.com/Servlet/BasicCGIServlet。您可以直接调用url(并向Servlet发送请求关键字/值对的字符串),也可以通过HTML表单中的操作调用它。要了解关于支持Servlet的网络服务器的更多信息,请参考JSDK的文档信息。

进一步的用法

GenericServlet和HttpServlet为构建Servlet提供了一个固定的基类。通过重载service()方法,您可以在它们的基础上进行构建。例如,您可以添加对响应缓存的支持(请参见HttpServlet中的getLastModified()),对HTTP 1.1方法的支持,等等。您甚至可以构建一个扩展的模板引擎。(谁真的喜欢在程序中构建HTML代码?)

另一种用法是扩展JSDK,以支持标准应用程序/x-www-form-urlencode mime类型之外的其他表单编码。例如,您可以添加对多部分/表单数据mime类型的支持,以处理通过HTTP上传文件。接口getParameterNames(),getParameterValues(),等等。都是在阳光下实现的。Servlet包,所以您需要配置JSDK来添加这些支持。还有另一种选择,你可以自己实现相关的方法,但是要做到这一点,你需要复制代码或者改变JSDK的语义。以上方法都是可行的,但没有一个是完整的。

现在,您应该能够自己创建Java Servlets了。它们可以用来取代传统的Perl和C/C CGI程序。Java的面向对象特性和“一次编写,随处运行”的机制,使得Java Servlets的编写变得非常简单。Servlet的稳定性可以解决与状态管理相关的问题,这是CGI程序只使用一次来解决实际问题时常见的问题。Servlets可以利用Java语言的所有功能,包括JDBC和RMI。由于大多数web服务器都增加了对Servlet的支持,Java将很快成为开发企业应用程序的可选语言。

看完以上内容,你掌握了如何谈论Java Servlets和CGI程序了吗?如果您想学习更多技能或了解更多相关内容,请关注行业资讯频道,感谢您的阅读!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/107931.html

(0)

相关推荐

  • css中怎么设置边框大小和颜色

    技术css中怎么设置边框大小和颜色小编给大家分享一下css中怎么设置边框大小和颜色,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

    攻略 2021年11月14日
  • MySQL varchar类型最大值是多少

    技术MySQL varchar类型最大值是多少本篇内容介绍了“MySQL varchar类型最大值是多少”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希

    攻略 2021年12月4日
  • MySQL表类型中如何查看数据库支出的存储引擎

    技术MySQL表类型中如何查看数据库支出的存储引擎这期内容当中小编将会给大家带来有关MySQL表类型中如何查看数据库支出的存储引擎,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。1、查看

    攻略 2021年11月9日
  • Java中类和对象的示例分析

    技术Java中类和对象的示例分析这篇文章主要介绍了Java中类和对象的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。类可以看成是创建Java对象的

    攻略 2021年11月13日
  • vue缓存使用方法(vue项目中什么时候用到缓存)

    技术vue的缓存实现方式有哪些这篇文章主要讲解了“vue的缓存实现方式有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“vue的缓存实现方式有哪些”吧!

    攻略 2021年12月22日
  • 焦虑症状,抑郁症焦虑症都有些什么症状

    技术焦虑症状,抑郁症焦虑症都有些什么症状焦虑和抑郁都有什么症状?这个问题本来可以网上搜索,但是简明介绍一下的话,会更能够帮助人加深理解焦虑症状。焦虑和抑郁都是典型的心理问题,都是人遇到了某种困难,走不出去,所导致的不良身

    生活 2021年10月26日