一、环境配置:
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。