簡體   English   中英

Java App for Java和Java EE之間的核心區別是什么?

[英]What is core difference between Java for Google App Engine and Java EE?

Java App for Java和Java EE之間的核心區別是什么? (我根本不熟悉Java,所以請你解釋一下,一般情況有什么不同,對於簡歷來說,學習更好)

Google App Engine for Java是基於webapp容器(Jetty)構建的,因此它顯然只提供了一些Java EE,但有一些限制 (但也增加了使用標准化API來利用其基礎架構):

  • Servlets 2.4,JSP 2.0
  • JDO和JPA對數據存儲的部分支持
  • JavaMail for ... mail
  • JAXB
  • 用於XML處理API的DOM,SAX和XSLT

不支持的Java EE API和技術包括:

  • 企業Java Bean(EJB)
  • JAX-RPC
  • JAX-WS
  • Java數據庫連接(JDBC)
  • Java EE™連接器體系結構(JCA)
  • Java管理擴展(JMX)
  • Java消息服務(JMS)
  • Java命名和目錄接口(JNDI)
  • 遠程方法調用(RMI)

它將在App Engine中發揮更多細節。

順便說一句,我們不再說J2EE了,它是2005年以來的Java EE :)

第一個anwser說Appengine是Java EE的子集是真的,但它錯過了一些信息。

Google Appengine確實支持Java EE的子集,但Java EE也支持Appengine技術的子集。

Appengine附帶一個高復制數據存儲和彈性擴展。 所以你不要為空閑的服務器買單。 Appengine支持Web Hooks,這是一項新技術,可用於執行與JMS類似的操作。 JNDI不支持是有原因的,因為在Google Appengine中獲取服務是通過簡單的Java API完成的。 從而簡化了模型。 RMI在appengine的內部使用很多,如果需要你可以自己使用它。 但是,在appengine中使用RMI並沒有多大意義,因為機器間通信可以通過XMPP或通過High Replication完成。

因此,使用Appengine,您可以開發與Java EE類似的應用程序,但是您必須使用Googles Infrastructure。 很多繁重的工作,例如機器配置,網絡配置,縮放,都是自動完成的。 因此,不需要大型系統工程團隊。

總而言之,Java EE是大型企業公司使用的舊方式。 Appengine被初創公司使用,他們希望能夠快速增長並且需要擴展,但也不會帶來輕微的啟動成本。

Google App引擎提供了您可以對底層計算機執行的操作的有限子集。 最大的問題是您無法訪問本地存儲,並且您的請求處理必須以指定的時間限制完成,否則您的任務將被終止。

語言沒有區別:它們都是Java。 不同之處在於您可以使用哪些類庫。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM