逍遥一派 发表于 2015-1-18 11:31:06

JAVA网页编程之甚么是Servlet

再举这样一个例子:如果你想对一个数字取绝对值,你会怎么做呢?java的做法是intc=Math.abs(-166);而ruby的做法是:c=-166.abs。呵呵,这就看出了java与ruby的区别。servletServlet是用Java编写的Server端程序,它与协定战争台有关。Servlet运转于Java-enabledWebServer中。JavaServlet能够静态地扩大Server的才能,并接纳哀求-呼应形式供应Web服务。

  最早撑持Servlet手艺的是JavaSoft的JavaWebServer。今后,一些别的的基于Java的WebServer入手下手撑持尺度的ServletAPI。Servlet的次要功效在于交互式地扫瞄和修正数据,天生静态Web内容。这个历程为:

  客户端发送哀求至服务器端;

  服务器将哀求信息发送至Servlet

  Servlet天生呼应内容并将其传给Server。呼应内容静态天生,一般取决于客户真个哀求

  服务器将呼应前往给客户端

  Servlet看起来像是一般的Java程序。Servlet导进特定的属于JavaServletAPI的包。由于是对象字节码,可静态地从收集加载,能够说Servlet对Server就好像Applet对Client一样,可是,因为Servlet运转于Server中,它们其实不必要一个图形用户界面。从这个角度讲,Servlet也被称为FacelessObject。

  JAVAServlet的上风:

  Servlet能够和其他资本(文件、数据库、Applet、Java使用程序等)交互,以天生前往给客户真个呼应内容。假如必要,还能够保留哀求-呼应过程当中的信息。

  接纳Servlet,服务器能够完整受权对当地资本的会见(如数据库),而且Servlet本身将会把持内部用户的会见数目及会见性子

  Servlet能够是别的服务的客户端程序,比方,它们能够用于散布式的使用体系中,能够从当地硬盘,大概经由过程收集从远端硬盘激活Servlet。

  Servlet可被链接(chain)。一个Servlet能够挪用另外一个或一系列Servlet,即成为它的客户端。

  接纳ServletTag手艺,能够在HTML页面中静态挪用Servlet。

  ServletAPI与协定有关。它其实不对传送它的协定有任何假定。

  像一切的Java程序一样,Servlet具有面向对象Java言语的一切上风

  Servlet供应了Java使用程序的一切上风――可移植、妥当、易开辟。利用Servlet的Tag手艺,Servlet可以天生嵌于静态HTML页面中的静态内容。

  一个Servlet被客户端发送的第一个哀求激活,然后它将持续运转于背景,守候今后的哀求。每一个哀求将天生一个新的线程,而不是一个完全的历程。多个客户可以在统一个历程中同时失掉服务。一样平常来讲,Servlet历程只是在WebServer卸载时被卸载。

  Servlet性命周期:

  装载Servlet。这项操纵通常为静态实行的。但是,Server一般会供应一个办理的选项,用于在Server启动时强迫装载和初始化特定的Servlet。

  Server创立一个Servlet的实例

  Server挪用Servlet的init()办法

  一个客户真个哀求抵达Server

  Server创立一个哀求对象

  Server创立一个呼应对象

  Server激活Servlet的service()办法,传送哀求和呼应对象作为参数

  service()办法取得关于哀求对象的信息,处置哀求,会见其他资本,取得必要的信息

  service()办法利用呼应对象的办法,将呼应传回Server,终极抵达客户端。service()办法大概激活别的办法以处置哀求,如doGet()或doPost()或程序员本人开辟的新的办法

  关于更多的客户端哀求,Server创立新的哀求和呼应对象,仍旧激活此Servlet的service()办法,将这两个对象作为参数传送给它。云云反复以上的轮回,但无需再次挪用init()办法。一样平常Servlet只初始化一次,当Server不再必要Servlet时(一样平常当Server封闭时),Server挪用Servlet的Destroy()办法。

  在美国,EJB+Servlet+JSP几近成为电子商务的开辟尺度。原本ASP也很有但愿,但微软比来大概把精神都会合在打讼事和Win2000上,因而电子商务开展得太少。PHP因为其形式和一些生成缺点,毫无但愿。在美国,很少有贸易站点用PHP的。
你总不能说你写框架吧,那无疑会加大工作量,现在大多企业采取的是折中的办法,就是改别人写好的框架,可要改框架,前提是你对这个框架足够的了解,这就更难了。

若天明 发表于 2015-1-21 09:17:15

有时间再研究一下MVC结构(把Model-View-Control分离开的设计思想)

灵魂腐蚀 发表于 2015-1-30 13:18:29

接着就是EJB了,EJB就是Enterprise JavaBean, 看名字好象它是Javabean,可是它和Javabean还是有区别的。它是一个体系结构,你可以搭建更安全、更稳定的企业应用。它的大量代码已由中间件(也就是我们常听到的 Weblogic,Websphere这些J2EE服务器)完成了,所以我们要做的程序代码量很少,大部分工作都在设计和配置中间件上。

再见西城 发表于 2015-2-4 17:15:16

一直感觉JAVA很大,很杂,找不到学习方向,前两天在网上找到了这篇文章,感觉不错,给没有方向的我指了一个方向,先不管对不对,做下来再说。

飘灵儿 发表于 2015-2-5 03:04:00

在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。

冷月葬花魂 发表于 2015-2-6 16:32:15

你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢?

只想知道 发表于 2015-2-12 22:57:11

象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。

第二个灵魂 发表于 2015-3-3 02:47:34

还好,SUN提供了Javabean可以把你的JSP中的 Java代码封装起来,便于调用也便于重用。

仓酷云 发表于 2015-3-9 20:55:19

Jive的资料在很多网站上都有,大家可以找来研究一下。相信你读完代码后,会有脱胎换骨的感觉。遗憾的是Jive从2.5以后就不再无条件的开放源代码,同时有licence限制。不过幸好还有中国一流的Java程序员关注它,外国人不开源了,中国人就不能开源吗?这里向大家推荐一个汉化的Jive版本—J道。Jive(J道版)是由中国Java界大名 鼎鼎的banq在Jive 2.1版本基础上改编而成, 全中文,增加了一些实用功能,如贴图,用户头像和用户资料查询等,而且有一个开发团队在不断升级。你可以访问banq的网站

分手快乐 发表于 2015-3-13 00:09:41

自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,这也就是Sun ONE(Open Net Environment)体系。J2SE就是Java2的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。

爱飞 发表于 2015-3-15 00:02:13

是一种语言,用以产生「小应用程序(Applet(s))

因胸联盟 发表于 2015-3-16 06:15:38

是一种使用者不需花费很多时间学习的语言

不帅 发表于 2015-3-22 20:28:00

Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)

深爱那片海 发表于 2015-3-25 08:07:32

接着就是EJB了,EJB就是Enterprise JavaBean, 看名字好象它是Javabean,可是它和Javabean还是有区别的。它是一个体系结构,你可以搭建更安全、更稳定的企业应用。它的大量代码已由中间件(也就是我们常听到的 Weblogic,Websphere这些J2EE服务器)完成了,所以我们要做的程序代码量很少,大部分工作都在设计和配置中间件上。

活着的死人 发表于 2015-3-29 17:28:42

不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。

飘飘悠悠 发表于 2015-4-1 04:10:24

Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)

逍遥一派 发表于 2015-4-25 01:32:06

至于JDBC,就不用我多说了,你如果用java编过存取数据库的程序,就应该很熟悉。还有,如果你要用Java编发送电子邮件的程序,你就得看看Javamail 了。

金色的骷髅 发表于 2015-4-30 07:24:27

接着就是EJB了,EJB就是Enterprise JavaBean, 看名字好象它是Javabean,可是它和Javabean还是有区别的。它是一个体系结构,你可以搭建更安全、更稳定的企业应用。它的大量代码已由中间件(也就是我们常听到的 Weblogic,Websphere这些J2EE服务器)完成了,所以我们要做的程序代码量很少,大部分工作都在设计和配置中间件上。

admin 发表于 2015-5-1 15:10:32

Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。

愤怒的大鸟 发表于 2015-5-4 19:57:17

象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。
页: [1] 2
查看完整版本: JAVA网页编程之甚么是Servlet