Java运行时环境
Java运行时环境就好像是一个servlet容器。当应用程序服务器接收到请求时,会将其URL路径与部署描述符中的servlet映射进行对比,并以此判断出应该调用哪个servlet类。然后,服务器将使用标准的servlet接口去调用这个servlet,并向其传送一个充满数据的请求对象和一个空的响应对象。接着,应用程序代码填充该响应对象并退出。***,服务器将这个响应返回给客户端。
Java运行时环境使用的是Java 6虚拟机(JVM)。JVM运行的是Java字节码,当你把Java代码发送给Java编译器后,得到的与此相同。其他的一些编译器或解释器也能得到Java字节码:能产生Java字节码的其他语言的编译器,如Scala;用Java字节码实现的其他语言的解释器,如JRuby(Ruby)、Rhino(JavaScript)、Groovy以及Jython(一款由Java实现的Python解释器)。任何语言,只要它有能用于JVM的编译器或解释器,就能拿来编写App Engine应用程序(当然,其结果必须要实现servlet接口)。
拥有完整的JVM也意味着你可以在应用程序中使用许多的第三方库。这虽然会有许多的限制条件(我们马上就会讲到),不过,在大多数情况下,使用库是在应用程序的WAR中引入JAR或类文件的最简便方式。
通过servlet上下文中的servlet信息字符串(由this.getServletContext().getServletInfo()返回),应用程序可以判断它当前是运行在App Engine上还是在开发服务器上。如果运行在开发服务器上,则该字符串将以GAE Development开头。它还包含有运行时环境的版本号。
应用程序可以通过ApiProxy类获取它的应用程序ID和版本ID。import com.google.apphosting.api.ApiProxy;
// ...
StringappId=
ApiProxy.getCurrentEnvironment().getAppId();
StringversionId=
ApiProxy.getCurrentEnvironment().getVersionId();
【责任编辑:云霞 TEL:(010)68476606】
点赞 0