谷歌google app engine for java 的web应用程序实例源码解析

google app engine for java 的web应用程序实例源码解析,在IT业步入“云”时代的时候,Google App Engine无疑是引领“云”技术潮流的一支生力军。但在App Engine诞生后的很长一段时间里,它都只支持Python语言,让广大Java程序员只能望洋兴叹。幸运的是,在2009年4月,Google App Engine推出了Java版本,让Java程序员终于能感受“云”时代开发的便利。本文将简单介绍如何开发基于Google App Engine for Java的Web应用程序,希望能有助于读者快速了解这一技术。

关于Google App Engine

简单来说,Google App Engine是Google公司提供的一个可供用户运行网络应用程序的基础架构,使用App Engine,开发者不再需要购买服务器或虚拟空间,只需上传程序,即可开始为用户提供服务。目前,Google App Engine支持Python和Java两种语言。

安装Eclipse插件

创建基于Google App Engine for Java的应用程序,最好的途径是使用Google提供的Eclipse插件,插件安装方法具体见http://code.google.com/eclipse/docs/download.html;对于我使用的MyEclipse6.0,插件安装地址为http://dl.google.com/eclipse/plugin/3.3。

安装后,重启MyEclipse,如工具栏出现如下图标,安装即完成。

按钮的功能:

  • 蓝色小球让您能够访问 App Engine for Java 项目创建向导。
  • 红色工具箱让您编译一个 GWT 项目。
  • 迷你喷气式飞机图标让您能够部署一个 App Engine 项目。

下面,我们在MyEclipse中创建一个简单的“Welcome2GAE”应用程序,来简单说明基于Google App Engine的开发过程。

创建“Welcome2GAE”应用

  • 新建项目点击蓝色小球图标,出现新建Web App项目界面,填入项目名称,包名等必填项,选择使用Google App Engine,点击Finish,即可创建一个完整的Web App项目,项目结构如下图:

    事实上,在创建项目的过程中,App Engine插件已经为我们生成了一个可以运行的工程,包含Welcome2GAEServlet.java、web.xml等文件,运行此工程后,即可通过访问服务器查看到“Hello World!”页面。

    但是,我们想做的稍微复杂一点,主要是加入Jsp页面及表单提交的功能,具体为,访问http://localhost:8888/ ,可查看到如下图所示的页面。

    用户填入名字提交后,即显示欢迎页面,如下所示。

  • 创建welcome.jsp文件我们在war目录下,创建welcome.jsp文件,以显示名字输入页面。Jsp文件内容如下:
    <%@ page language=”java” import=”java.util.*” pageEncoding=”ISO-8859-1″%>
    <!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN”>
    <html>
    <head>
    <title>Welcome2GAE</title>
    </head>
    <body>
    <form action=”/welcome”>
    Please enter your name:
    <input type=”text” name=”name”>
    <br>
    <input type=”submit” />
    <br>
    </form>
    </body>
    </html>
  • 修改Welcome2GAEServlet.java文件内容如下:
    package com.appengine;
    import java.io.IOException;
    import javax.servlet.http.*;
    @SuppressWarnings(“serial”)
    public class Welcome2GAEServlet extends HttpServlet {
    public void doGet(HttpServletRequest req, HttpServletResponse resp)
    throws IOException {
    resp.setContentType(“text/plain”);
    resp.getWriter().println(
    “Welcome to GAE ! ” + req.getParameter(“name”) + ” !”);
    }
    }
  • 修改web.xml文件内容如下:
       <?xml version=”1.0″ encoding=”utf-8″?>
    <web-app xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”
    xmlns=”http://java.sun.com/xml/ns/javaee”
    xmlns:web=”http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd”
    xsi:schemaLocation=”http://java.sun.com/xml/ns/javaee
    http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd”
    version=”2.5″>
    <servlet>
    <servlet-name>welcome</servlet-name>
    <servlet-class>com.appengine.Welcome2GAEServlet</servlet-class>
    </servlet>
    <servlet-mapping>
    <servlet-name>welcome</servlet-name>
    <url-pattern>/welcome</url-pattern>
    </servlet-mapping>
    <welcome-file-list>
    <welcome-file>welcome.jsp</welcome-file>
    </welcome-file-list>
    </web-app>
  • 本地运行完成以上文件新建及修改后,即可按下图所示,运行Web Application,然后访问http://localhost:8888可查看效果。

部署“Welcome2GAE”到Google App Engine

对熟悉JavaEE开发的读者来说,上面的例子实在是太过简单了,对,你想得没错,Google App Engine开发实际上就是这样简单,和我们平常的Web开发区别不大。下面,我们来看它与平常Web开发的主要区别,即将应用部署到App Engine。

正如Google的其他服务一样,App Engine在开始的时候也提供免费的服务,当你的应用访问量达到一个比较高的水平的时候,才会收取适当的费用。当然了,免费的服务也需要你拥有一个Google账号,并申请App Engine服务。读者可登录Google网站,申请账户及相应服务,这里就不一一赘述。

在上传应用之前,我们需要先在Google App Engine个人账户管理页面上为应用申请一个Application ID,并在工程中配置此ID,类似于域名,事实上,Google也提供了类似http://ID.appspot.com 的免费二级域名,给大家使用,配置ID如下图所示。

配置完ID后,点击前文所述的部署App Engine按钮,按下图部署,即可完成应用的部署操作。

读者可访问http://dianausdu.appspot.com/,查看示例效果。

结语

至此,我们即完成了一个非常简单的Google App Engine应用程序,并部署到Google App Engine。

以上介绍,希望能对读者学习Google App Engine有所帮助。 本文链接地址: 谷歌google app engine for java 的web应用程序实例源码解析