Grails--Quick Start

          Posted on 2007-07-18 12:26 puras 閱讀(1431) 評論(0)  編輯  收藏 所屬分類: Grails
          下面將開始一個簡單的GRAILS項(xiàng)目.同樣也演示了如何創(chuàng)建一個小應(yīng)用的步驟.
          創(chuàng)建Grails項(xiàng)目
          一旦你安裝過Grails之后,你就可以使用內(nèi)置的命令來創(chuàng)建新的項(xiàng)目了:
          grails create-app
          之后會提示您,讓您輸入項(xiàng)目名稱.
          也可以直接在命令后輸入項(xiàng)目的名稱.
          grails create-app puras_app
          命令執(zhí)行完之后,會生成一個以你輸入的項(xiàng)目名為名的目錄,里面則是自動生成的目錄結(jié)構(gòu)和一些基礎(chǔ)代碼了,結(jié)構(gòu)如下:
          %PROJECT_HOME%
              
          + grails-app
                 
          + conf                 ---> 本地配置文件,像是數(shù)據(jù)源
                 
          + controllers          ---> 這個文件夾里存有Controller類
                 
          + domain               ---> 這個文件夾里存有domain類
                 
          + i18n                 ---> 國際化信息
                 
          + services             ---> location of services
                 
          + taglib               ---> 標(biāo)簽庫
                 
          + util                 ---> 工具庫
                 
          + views                ---> 視圖
                     
          + layouts              ---> 布局
             
          + hibernate              ---> 可選擇的Hibernate的配置
             
          + lib
             
          + spring                 ---> 可選擇的Spring配置
             
          + src
                 
          + groovy               ---> 可選擇的,groovy源代碼
                 
          + java                 ---> 可選擇的,java源代碼
             
          + war
                 
          + WEB-INF
          接下來,可以選擇配置一個數(shù)據(jù)源,在執(zhí)行"create-app"時(shí),grails就創(chuàng)建了幾個數(shù)據(jù)源在你的%PROJECT_HOME%/grails-app/conf目錄里,它們都是標(biāo)準(zhǔn)的環(huán)境:DevelopmentDataSource(開發(fā)數(shù)據(jù)源),TestDataSource(測試數(shù)據(jù)源),和ProductionDataSource(產(chǎn)品數(shù)據(jù)源).所有的例子都是操作在開發(fā)環(huán)境之下.
          在執(zhí)行應(yīng)用的時(shí)候可以選擇所屬的環(huán)境(以后有介紹).
          默認(rèn)的,每個數(shù)據(jù)源都配置的是內(nèi)嵌的HSQLDB數(shù)據(jù)庫(可以很方便的測試,但是現(xiàn)實(shí)的環(huán)境中大概沒什么用處),所以此步驟是可選的:
          DevelopmentDataSource.groovy
          class DevelopmentDataSource {
             
          boolean pooling = true
             String dbCreate 
          = "create-drop" // one of 'create', 'create-drop','update'
             String url = "jdbc:hsqldb:mem:testDB"
             String driverClassName 
          = "org.hsqldb.jdbcDriver"
             String username 
          = "sa"
             String password 
          = ""
          }
          配置這個數(shù)據(jù)庫,就是簡單的替換上所希望使用數(shù)據(jù)庫的值,再將其所用的驅(qū)動包拷貝到%PROJECT_HOME%/lib目錄下.
          創(chuàng)建一個實(shí)體類
          確認(rèn)你現(xiàn)在所在的目錄是你的項(xiàng)目的主目錄,之后輸入以下命令
          grails create-domain-class
          之后命令會提示你輸入要創(chuàng)建的類名,你也可以直接在命令后直接輸入類名,如:
          grails create-domain-class Book
          向類里添加兩個屬性:
          Book.groovy
          class Book {
              String title
              String author
          }
          你可能想要創(chuàng)建一些測試數(shù)據(jù).一個簡單的方法就是在%PROJECT_HOME%/grails-app/conf/ApplicationBootStrap.groovy這個Grails應(yīng)用的啟動類的"init"閉包里創(chuàng)建并保存測試數(shù)據(jù).
          class ApplicationBootStrap {

              def init 
          = { servletContext ->
                  
          // Create some test data
                  new Book(author:"Stephen King",title:"The Shining").save()
                  
          new Book(author:"James Patterson",title:"Along Came a Spider").save()
              }
              def destroy 
          = {
              }
          }
          創(chuàng)建Controller
          Controllers是Grails應(yīng)用的中心,它們處理WEB請求和請求的URLs,將請求和請求參數(shù)映射到控制器類和它里面的一個閉包.
          執(zhí)行"grails generate-all"命令,并輸入控制器的名稱.在我們的例子中,我們在生成控制器類的時(shí)候輸入"Book",將會在%PROJECT_HOME%/grails-app/controllers下生成一個名叫BookController.groovy的文件.也可以直接在命令后直接加上控制器類的名稱.
          grails generate-all Book
          打開這個文件,并把里面的內(nèi)容替換成下面所示的代碼,使用在你的程序運(yùn)行的時(shí)候動態(tài)生成的動態(tài)腳手架.
          class BookController {
               def scaffold 
          = Book
          }
          要注意你輸入的"Book"是大寫的B開頭.

          當(dāng)然,你同樣可以不替換而使用默認(rèn)生成的代碼.它可是有學(xué)習(xí)的價(jià)值哦.

          要開始你的Grails應(yīng)用,執(zhí)行下面的命令
          grails run-app

          這個命令將啟動一個Jetty應(yīng)用服務(wù)器的一個實(shí)例運(yùn)行在8080端口上.為了啟動一個運(yùn)行在不同端口上,比如說9090,使用grails -Dserver.port=9090 run-app.要訪問books的例表,打開瀏覽器,并輸入:
          http://localhost:8080/puras_app/book/list

          簡單的小應(yīng)用到此結(jié)束.參照它,舉一返三,做一些簡單的小應(yīng)用還是可以的!

          posts - 47, comments - 124, trackbacks - 0, articles - 0

          Copyright © puras

          主站蜘蛛池模板: 衢州市| 深水埗区| 鄯善县| 四子王旗| 谷城县| 南华县| 神木县| 五原县| 临西县| 化隆| 毕节市| 太仓市| 板桥市| 奉新县| 永清县| 湖南省| 清河县| 尤溪县| 泽库县| 宝山区| 康定县| 招远市| 昆山市| 金堂县| 塔城市| 白城市| 龙泉市| 昌宁县| 牟定县| 襄垣县| 焉耆| 曲阜市| 元朗区| 海原县| 佛学| 临泽县| 浦县| 将乐县| 正蓝旗| 夹江县| 永德县|