一、環境配置:
1、下載Groovy 1.5 及Grails 1.0.3
2、設置環境變量:JAVA_HOME,GROOVY_HOME,GRAILS_HOME。設置PATH:把grails_home及groovy_home中的bin目錄加入到path中。
3、設置好上面的路徑,驗證一下是否配置成功,打開cmd命令行,輸入”grails”
Welcome to Grails 1.0.3 - http://grails.org/
Licensed under Apache Standard License 2.0
Grails home is set to: F:\grails-1.0.3
No script name specified. Use 'grails help' for more info or 'grails interactive
' to enter interactive mode
出現以上信息說明grails配置成功,下面就可以開始使用了。
二、開始學習
1、 創建一個grails的工程,現在我們用命令行的方式來看是怎么使用的,我用的IDE工具是IDEA,里面裝上jetgrooy插件可以很方便的開發grails項目。
首先,先建一個自己的工作目錄grails_project,進入建立的工作目錄,
輸入“grails create-app”這是會運行grails的腳本來建立工程,中間會出現
Environment set to development
Application name not specified. Please enter:
讓用戶輸入自己的工程的名稱,輸入一個自己工程的名稱即可。目錄結構
├─grails-app ->這是grails工程的目錄,基本上所有的文件都在這個目錄下
│ ├─conf ->grails的一些基本配置目錄
│ │ ├─hibernate
│ │ └─spring
│ ├─controllers ->控制器文件的目錄,類似Struts的Action目錄
│ ├─domain ->這是domain類的目錄,類似HO,所有的操作都是基于這個目錄的
│ ├─i18n ->國際化目錄,如果是中文的需要增加_zh.properties文件
│ ├─services -> services目錄,可以寫一些自己的services類
│ ├─taglib ->自定義標簽文件目錄
│ ├─utils ->工具類
│ └─views ->這里放的就是所有前臺顯示頁面的目錄
│ └─layouts
這里生成好的項目是可以用eclipse直接導入使用的。
2、 工程建好了,下面就可以使用了,我們先要設置一下我們的數據庫配置,默認的配置是一個內存數據庫,工程停了,數據就沒有了,這里我用的是mysql,,打開conf目錄下的DataSource.groovy文件,這是一個Groovy的一個類文件。設置一下mysql的配置:需要把mysql的jdbc包導入到工程中。
dataSource {
pooled = true
driverClassName = "com.mysql.jdbc.Driver"
username = "root"
password = "111111"
}
hibernate {
cache.use_second_level_cache=true
cache.use_query_cache=true
cache.provider_class='com.opensymphony.oscache.hibernate.OSCacheProvider'
}
// environment specific settings
environments {
development {
dataSource {
dbCreate = "update" // one of 'create', 'create-drop','update'
url = "jdbc:mysql://192.168.130.66:3306/racetrace_dev"
}
}
test {
dataSource {
dbCreate = "update" // one of 'create', 'create-drop','update'
url = "jdbc:mysql://192.168.130.66:3306/racetrace_test"
}
}
production {
dataSource {
dbCreate = "update" // one of 'create', 'create-drop','update'
url = "jdbc:mysql://192.168.130.66:3306/racetrace_pro"
}
}
}
進入到CMD命令行,輸入“grails create-domain-class”創建domain類
E:"grails_project"grails_test>grails create-domain-class
Environment set to development
name not specified. Please enter:
User
[copy] Copying 1 file to E:"grails_project"grails_test"grails-app"domain
Created Domain Class for User
[copy] Copying 1 file to E:"grails_project"grails_test"test"integration
Created Tests for User
創建成功后可以在domain目錄上看到一個User.groovy的文件
修改
class User {
String name
String sex
}
找到conf目錄下的BootStrap 文件,這個文件是grails啟動時會初始化的類,我們在這里輸入一些初始化的數據。
class BootStrap {
def init = { servletContext ->
// Create some test data
new User(name:"Stephen King",sex:"男").save()
new User(name:"James Patterson",sex:"女").save()
}
def destroy = {
}
}
在servics目錄上建立class UserController {
def scaffold = User
}
這里的寫法,在服務啟動后會初始化一系列的使用文件。這些文件也可以通過命令行去創建,這是做例子可以先這樣,如果需要修改中間的一些文件配置再生成后做修改
最后進入到工程的根目錄在命令行執行“grails run-app”運行項目,Grails用了內嵌式的jetty服務器。
到此基本上就認識了Grails。