2010-09-15 152 views
6

我想问一个关于java web应用程序的问题。当我开始学习JSP时,我总是会听说Java EE Web应用程序。但我不知道这个词的实际含义。任何人都可以向我解释这个词吗?谢谢。什么是Java EE Web应用程序?

+0

[Java SE/EE/ME之间的差异]的可能重复(http://stackoverflow.com/questions/2857376/difference-between-java-se-ee-me) – 2010-09-16 01:36:10

回答

2

存在Java分布的层次结构。

从Java ME开始 - 针对手机等小型机器上的嵌入式应用程序的微版。

转向大多数程序员熟悉的标准版JavaSE。

然后升级到J2EE - 企业版。除了SE之外,J2EE发行版必须支持javax ....系列接口中的多个企业级库和API。其中最重要的是“事务容器”,EJB和WS * Web服务API。

这些接口由第三方实施某些开放源代码,如GlassFish和JBOSS,但主要由专有(最终昂贵的)产品(如WebLogic或WebSphere)提供。

1

Web应用程序是指可以部署到EE容器(如Tomcat,WebLogic或GlassFish)上的特定类型的“模块”。它是JSP,JSF和其他类的集合。

与常规的Java应用程序不同,EE web应用程序不能仅仅通过键入“java”来“运行”。必须将部署到您的网络服务器。一旦服务器正在运行,您可以利用许多内置功能,这些功能虽然很有用,但很像从首字母缩写词firehose中喝酒。

不幸的是,没有简单的方法进入它。从我所听到的,最好的开始方式是使用Sun教程。那里也有很多书。获得最重要的概念是EE应用程序将运行的“容器”的概念。这就像虚拟机中有一台虚拟机。这是一个奇怪的概念。

快乐狩猎! Jeff

4

Web应用程序不同于其他类型的应用程序,例如桌面应用程序(例如Photoshop),因为大多数计算是在远程计算机上完成的,只有显示数据发送到用户计算机。通常,用户界面将以某种“网络”技术(HTML/JavaScript/flash等)编写,并将使用Web浏览器进行查看,因此可以查看该名称。

为了使其工作,远程计算机(服务器)必须运行一个应用程序,该应用程序侦听客户端请求,执行一些计算并将答复返回给用户。例如,当您从亚马逊购买书籍时,购买按钮会向远程应用程序发送请求以处理您的订单并返回确认消息。

该流程涉及许多细节 - 应用程序必须侦听请求,它必须处理故障,可能连接到数据库等等。由于大部分工作与任何网络应用程序类似,所以通常使用称为的应用程序服务器来为您工作。

应用程序服务器是知道如何运行其他应用程序并为他们完成一些工作的应用程序。因此,现在,当用户向Web应用程序发送请求时,应用程序服务器会获取它,也许从中提取一些数据并对其进行验证,然后告诉您的应用程序处理业务逻辑。这样,无论您何时编写Web应用程序,您都不必担心通信等问题。

有各种技术的网络服务器。例如 - IIS是.Net Web应用程序的Web服务器。我们的Java EE实际上是一组规范(这是一组接口的一个花哨词汇,并命令如何实现它们)定义了应该如何编写Java应用程序以及供应商如何实现他的应用程序服务器,以便他们可以一起工作。这里前面提到的“容器”是供应商应用程序服务器的Java EE名称。

你说你正在学习如何编写JSP。在编写JSP时,实际上实现了一个规范,该规范定义了如何编写Java EE显示组件,该组件可以转换为HTML。您的应用程序服务器(Tomcat的/ JBoss的/ BEA等等)知道什么,以便产生想要的HTML,然后将其发送到用户与你的JSP做。

相关问题