Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaforGoogleAppEngine和JavaEE之间的核心区别是什么?_Java_Google App Engine_Jakarta Ee - Fatal编程技术网

JavaforGoogleAppEngine和JavaEE之间的核心区别是什么?

JavaforGoogleAppEngine和JavaEE之间的核心区别是什么?,java,google-app-engine,jakarta-ee,Java,Google App Engine,Jakarta Ee,JavaforGoogleAppEngine和JavaEE之间的核心区别是什么?(我对Java一点也不熟悉,所以请您向我解释一下,一般来说,什么是差异,什么对简历更有利)Google App engine提供了一个有限的子集,您可以对底层机器执行哪些操作。最大的问题是您无法访问本地存储,并且您的请求处理必须在指定的时间限制内完成,否则您的任务将被终止 语言上没有区别:它们都是Java。不同之处在于您可以使用哪些类库。Google App Engine for Java是基于webapp容器(Je

JavaforGoogleAppEngine和JavaEE之间的核心区别是什么?(我对Java一点也不熟悉,所以请您向我解释一下,一般来说,什么是差异,什么对简历更有利)

Google App engine提供了一个有限的子集,您可以对底层机器执行哪些操作。最大的问题是您无法访问本地存储,并且您的请求处理必须在指定的时间限制内完成,否则您的任务将被终止

语言上没有区别:它们都是Java。不同之处在于您可以使用哪些类库。

Google App Engine for Java是基于webapp容器(Jetty)构建的,因此它显然只提供Java EE的一个子集,但有一些限制()(还添加了使用标准化API利用其基础架构的功能):

  • Servlets 2.4、JSP 2.0
  • 数据存储部分支持JDO和JPA
  • JavaMail for。。。邮寄
  • JAXB
  • 用于XML处理API的DOM、SAX和XSLT
不支持的Java EE API和技术包括:

  • 企业JavaBeans(EJB)
  • JAX-RPC
  • JAX-WS
  • Java数据库连接(JDBC)
  • 爪哇EE™ 连接器体系结构(JCA)
  • Java管理扩展(JMX)
  • Java消息服务(JMS)
  • Java命名和目录接口(JNDI)
  • 远程方法调用(RMI)
更多详情请参阅


顺便说一句,我们不再说J2EE,它是自2005年以来的JavaEE:)

第一个说Appengine是JavaEE的一个子集的anwser是正确的,但它遗漏了一些信息

Google Appengine确实支持JavaEE的一个子集,但JavaEE也支持Appengine技术的一个子集

Appengine具有高复制数据存储和弹性扩展。所以你不用为闲置的服务器付费。Appengine支持Web钩子,这是一项新技术,可以用来做与JMS类似的事情。不支持JNDI是有原因的,因为在GoogleAppEngine中获取服务是通过一个简单的JavaAPI完成的。从而简化了模型。RMI在appengine的内部使用很多,如果需要,您可以自己使用它。然而,在appengine中使用RMI没有多大意义,因为机器间通信可以通过XMPP或高复制完成

因此,使用Appengine,您可以开发与JavaEE类似的应用程序,但您必须使用谷歌的基础设施。很多繁重的工作,比如机器配置、网络配置、缩放,都是自动完成的。因此,不需要一个大的系统工程团队


总之,JavaEE是大公司使用的旧方法。Appengine适用于那些希望快速增长且需要扩展的初创公司,但也不需要较小的启动成本。

您能告诉claryfy哪些posebileties对GAE不可用,哪些posebileties对GAE不可用,或者在GAE不可用时,哪些posebileties对您有限制?请查看GAE可用的白名单类。而且他们不提供全文搜索!:-((有人告诉我Lucene被移植了,但由于线程的原因失败了)@Vladimir是的,真是讽刺!谷歌没有提供搜索它非常酷的+1 Pascal Thivent!)这个答案有点偏颇。Google Appengine确实支持J2EE的一个子集,但J2EE也支持Appengine技术的一个子集。@Pascal:dead link->“它将在App Engine中发挥作用。”注意:现在不太可能的方法是Kubernetes和Dockerize:Appengine仍然不错