fun

           

          google app engine for java 學(xué)習(xí)之一

          注冊:http://appengine.google.com/promo/java_runtime

           kickstart: http://code.google.com/appengine/docs/java/gettingstarted/installing.html

          簡單小結(jié)一下:

          1. appengine for java開發(fā)包相當(dāng)友好

          2. appengine for java對ide也相當(dāng)友好

          3. appengine for java的webapp就是一個(gè)war

          4. appengine for java開發(fā)包使用了geronimo

          5. appengine for java使用了jdo作為數(shù)據(jù)接口

          6. appengine for java支持gwt

          8. appengine for java可以寫jsp和servlet

          9. appengine for java開發(fā)包使用了jetty和javadb?

          ...

          上代碼:

          <%@ page contentType="text/html;charset=UTF-8" language="java" %>   
          <%@ page import="java.util.List" %>   
          <%@ page import="javax.jdo.PersistenceManager" %>   
          <%@ page import="com.google.appengine.api.users.User" %>   
          <%@ page import="com.google.appengine.api.users.UserService" %>   
          <%@ page import="com.google.appengine.api.users.UserServiceFactory" %>   
          <%@ page import="guestbook.Greeting" %>   
          <%@ page import="guestbook.PMF" %>   
          <!--copyrigth http://www.bt285.cn  http://www.5a520.cn-
          <html>   
            
          <head>   
              
          <link type="text/css" rel="stylesheet" href="/stylesheets/main.css" />   
            
          </head>   
            
            
          <body>   
            
          <%   
              UserService userService 
          = UserServiceFactory.getUserService();   
              User user 
          = userService.getCurrentUser();   
              
          if (user != null{   
          %>   
          <p>Hello, <%= user.getNickname() %>! (You can   
          <a href="<%= userService.createLogoutURL(request.getRequestURI()) %>">sign out</a>.)</p>   
          <%   
              }
           else {   
          %>   
          <p>Hello!   
          <a href="<%= userService.createLoginURL(request.getRequestURI()) %>">Sign in</a>   
          to include your name with greetings you post.
          </p>   
          <%   
              }
             
          %>   
            
          <%   
              PersistenceManager pm 
          = PMF.get().getPersistenceManager();   
              String query 
          = "select from " + Greeting.class.getName() + " order by date desc range 0,5";   
              List
          <Greeting> greetings = (List<Greeting>) pm.newQuery(query).execute();   
              
          if (greetings.isEmpty()) {   
          %>   
          <p>The guestbook has no messages.</p>   
          <%   
              }
           else {   
                  
          for (Greeting g : greetings) {   
                      
          if (g.getAuthor() == null{   
          %>   
          <p>An anonymous person wrote:</p>   
          <%   
                      }
           else {   
          %>   
          <p><b><%= g.getAuthor().getNickname() %></b> wrote:</p>   
          <%   
                      }
             
          %>   
          <blockquote><%= g.getContent() %></blockquote>   
          <%   
                  }
             
              }
             
              pm.close();   
          %>   
            
              
          <form action="/sign" method="post">   
                
          <div><textarea name="content" rows="3" cols="60"></textarea></div>   
                
          <div><input type="submit" value="Post Greeting" /></div>   
              
          </form>   
            
            
          </body>   
          </html>  

           

          這是guestbook的jsp文件,麻雀雖小五臟俱全,尤其注意讀數(shù)據(jù)那塊!

          數(shù)據(jù)庫可以在\WEB-INF\appengine-generated\local_db.bin中找到。

          再來看看web.xml文件:

          <?xml version="1.0" encoding="utf-8"?>  
          <!DOCTYPE web-app PUBLIC   
           "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"   
           "http://java.sun.com/dtd/web-app_2_3.dtd"
          >  
            
          <web-app xmlns="http://java.sun.com/xml/ns/javaee" version="2.5">  
              
          <servlet>  
                  
          <servlet-name>guestbook</servlet-name>  
                  
          <servlet-class>guestbook.GuestbookServlet</servlet-class>  
              
          </servlet>  
              
          <servlet-mapping>  
                  
          <servlet-name>guestbook</servlet-name>  
                  
          <url-pattern>/guestbook</url-pattern>  
              
          </servlet-mapping>  
            
              
          <servlet>  
                  
          <servlet-name>sign</servlet-name>  
                  
          <servlet-class>guestbook.SignGuestbookServlet</servlet-class>  
              
          </servlet>  
              
          <servlet-mapping>  
                  
          <servlet-name>sign</servlet-name>  
                  
          <url-pattern>/sign</url-pattern>  
              
          </servlet-mapping>  
            
              
          <welcome-file-list>  
                  
          <welcome-file>guestbook.jsp</welcome-file>  
                  
          <welcome-file>index.html</welcome-file>  
              
          </welcome-file-list>  
          </web-app>  

          除此之外,appengine還有一個(gè)配置appengine-web.xml

        1. <?xml version="1.0" encoding="utf-8"?>  
        2. <appengine-web-app xmlns="http://appengine.google.com/ns/1.0">  
        3.     <application></application>  
        4.     <version>1</version>  
        5.    <desc>http://www.5a520.cn 小說520網(wǎng)</desc>
        6.     <system-properties>  
        7.         <property name="java.util.logging.config.file" value="WEB-INF/logging.properties"/>  
        8.     </system-properties>  
        9. </appengine-web-app>  
        10. posted on 2009-04-20 13:36 fun 閱讀(1587) 評論(0)  編輯  收藏

          導(dǎo)航

          統(tǒng)計(jì)

          常用鏈接

          留言簿(11)

          隨筆檔案

          友情鏈接

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 绥棱县| 吉水县| 莎车县| 郓城县| 菏泽市| 五峰| 资兴市| 辰溪县| 庄浪县| 卢龙县| 无为县| 南漳县| 象州县| 河东区| 高雄县| 工布江达县| 辽宁省| 礼泉县| 绥阳县| 常德市| 祁门县| 于都县| 新昌县| 五峰| 洛阳市| 丰镇市| 麻阳| 济宁市| 当涂县| 金川县| 武宣县| 镇赉县| 北碚区| 巴彦县| 黄冈市| 永福县| 卓尼县| 汽车| 读书| 微博| 根河市|