<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 431,  comments - 344,  trackbacks - 0
    下面將開始一個簡單的GRAILS項目.同樣也演示了如何創(chuàng)建一個小應(yīng)用的步驟.
    創(chuàng)建Grails項目
    一旦你安裝過Grails之后,你就可以使用內(nèi)置的命令來創(chuàng)建新的項目了:
    grails create-app
    之后會提示您,讓您輸入項目名稱.
    也可以直接在命令后輸入項目的名稱.
    grails create-app puras_app
    命令執(zhí)行完之后,會生成一個以你輸入的項目名為名的目錄,里面則是自動生成的目錄結(jié)構(gòu)和一些基礎(chǔ)代碼了,結(jié)構(gòu)如下:
    %PROJECT_HOME%
        
    + grails-app
           
    + conf                 ---> 本地配置文件,像是數(shù)據(jù)源
           
    + controllers          ---> 這個文件夾里存有Controller類
           
    + domain               ---> 這個文件夾里存有domain類
           
    + i18n                 ---> 國際化信息
           
    + services             ---> location of services
           
    + taglib               ---> 標簽庫
           
    + util                 ---> 工具庫
           
    + views                ---> 視圖
               
    + layouts              ---> 布局
       
    + hibernate              ---> 可選擇的Hibernate的配置
       
    + lib
       
    + spring                 ---> 可選擇的Spring配置
       
    + src
           
    + groovy               ---> 可選擇的,groovy源代碼
           
    + java                 ---> 可選擇的,java源代碼
       
    + war
           
    + WEB-INF
    接下來,可以選擇配置一個數(shù)據(jù)源,在執(zhí)行"create-app"時,grails就創(chuàng)建了幾個數(shù)據(jù)源在你的%PROJECT_HOME%/grails-app/conf目錄里,它們都是標準的環(huán)境:DevelopmentDataSource(開發(fā)數(shù)據(jù)源),TestDataSource(測試數(shù)據(jù)源),和ProductionDataSource(產(chǎn)品數(shù)據(jù)源).所有的例子都是操作在開發(fā)環(huán)境之下.
    在執(zhí)行應(yīng)用的時候可以選擇所屬的環(huán)境(以后有介紹).
    默認的,每個數(shù)據(jù)源都配置的是內(nèi)嵌的HSQLDB數(shù)據(jù)庫(可以很方便的測試,但是現(xiàn)實的環(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)建一個實體類
    確認你現(xiàn)在所在的目錄是你的項目的主目錄,之后輸入以下命令
    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"命令,并輸入控制器的名稱.在我們的例子中,我們在生成控制器類的時候輸入"Book",將會在%PROJECT_HOME%/grails-app/controllers下生成一個名叫BookController.groovy的文件.也可以直接在命令后直接加上控制器類的名稱.
    grails generate-all Book
    打開這個文件,并把里面的內(nèi)容替換成下面所示的代碼,使用在你的程序運行的時候動態(tài)生成的動態(tài)腳手架.
    class BookController {
         def scaffold 
    = Book
    }
    要注意你輸入的"Book"是大寫的B開頭.

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

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

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

    簡單的小應(yīng)用到此結(jié)束.參照它,舉一返三,做一些簡單的小應(yīng)用還是可以的!
    posted on 2008-04-01 00:02 周銳 閱讀(299) 評論(0)  編輯  收藏 所屬分類: Groovy&Grails
    主站蜘蛛池模板: 国产精品亚洲а∨无码播放麻豆 | 91天堂素人精品系列全集亚洲 | 亚洲国产91精品无码专区| 中文字幕亚洲日韩无线码| 亚洲精品自在线拍| 男男gvh肉在线观看免费| 四虎影院免费视频| 亚洲尤码不卡AV麻豆| 亚洲性无码AV中文字幕| 成人爽a毛片免费| 国产资源免费观看| 亚洲伊人久久大香线蕉啊| 一级午夜免费视频| 日本免费一本天堂在线| 亚洲网站在线免费观看| 精品一区二区三区无码免费视频 | 国产精品高清免费网站| 国产香蕉九九久久精品免费| 狠狠亚洲狠狠欧洲2019| 国产在线观a免费观看| 国产一精品一aⅴ一免费| 亚洲字幕在线观看| 国产午夜精品理论片免费观看 | 18禁超污无遮挡无码免费网站国产| 亚洲综合久久一本伊伊区| 一级特黄aaa大片免费看| 亚洲一区AV无码少妇电影☆| 美女在线视频观看影院免费天天看 | 一级毛片免费在线播放| 亚洲香蕉成人AV网站在线观看| 日本在线免费观看| 亚洲综合av永久无码精品一区二区| 久久亚洲精品无码av| 中国在线观看免费国语版| 久久久久亚洲AV成人片| 日本高清免费观看| 亚洲中文字幕无码久久| 精品亚洲视频在线观看| 亚洲高清视频免费| 亚洲人6666成人观看| www.亚洲一区|