<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
    主站蜘蛛池模板: 一区二区在线视频免费观看| 亚洲综合日韩中文字幕v在线| 免费精品国产自产拍观看| 无码人妻一区二区三区免费手机| 久久久久久国产精品免费无码| 免费人成黄页在线观看日本| 国产精成人品日日拍夜夜免费| 久9这里精品免费视频| 国内精品久久久久影院免费| 免费国产叼嘿视频大全网站| 无码人妻精品中文字幕免费| 久久免费公开视频| 99re免费在线视频| 亚洲成人免费电影| 无码国产精品一区二区免费| 毛色毛片免费观看| 国产黄色片在线免费观看| 免费一级毛片不卡不收费| 亚洲AV无码乱码在线观看性色扶 | av电影在线免费看| 国产精品免费αv视频| 在线观看免费无码专区| 十九岁在线观看免费完整版电影| 24小时在线免费视频| 成人免费毛片视频| 亚洲国产人成精品| 亚洲乱码无码永久不卡在线| 日韩精品亚洲人成在线观看| 最新亚洲春色Av无码专区| 精品亚洲av无码一区二区柚蜜| 亚洲免费无码在线| 3d动漫精品啪啪一区二区免费| 成年美女黄网站18禁免费 | 久久久久高潮毛片免费全部播放| 国产桃色在线成免费视频| 国产美女精品久久久久久久免费| 亚洲一级片免费看| 亚洲精品影院久久久久久| 国产精品亚洲色图| 日本免费人成网ww555在线| 国产一卡2卡3卡4卡2021免费观看|