posts - 431,  comments - 344,  trackbacks - 0
下面将开始一个简单的GRAILS项目.同样也演示了如何创建一个小应用的步骤.
创建Grails项目
一旦你安装过Grails之后,你就可以使用内置的命令来创建新的项目了:
grails create-app
之后会提示您,让您输入项目名称.
也可以直接在命令后输入项目的名称.
grails create-app puras_app
命令执行完之后,会生成一个以你输入的项目名为名的目录,里面则是自动生成的目录结构和一些基础代码了,结构如下:
%PROJECT_HOME%
    
+ grails-app
       
+ conf                 ---> 本地配置文件,像是数据源
       
+ 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
接下来,可以选择配置一个数据源,在执行"create-app"时,grails就创建了几个数据源在你的%PROJECT_HOME%/grails-app/conf目录里,它们都是标准的环境:DevelopmentDataSource(开发数据源),TestDataSource(测试数据源),和ProductionDataSource(产品数据源).所有的例子都是操作在开发环境之下.
在执行应用的时候可以选择所属的环境(以后有介绍).
默认的,每个数据源都配置的是内嵌的HSQLDB数据库(可以很方便的测试,但是现实的环境中大概没什么用处),所以此步骤是可选的:
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 
= ""
}
配置这个数据库,就是简单的替换上所希望使用数据库的值,再将其所用的驱动包拷贝到%PROJECT_HOME%/lib目录下.
创建一个实体类
确认你现在所在的目录是你的项目的主目录,之后输入以下命令
grails create-domain-class
之后命令会提示你输入要创建的类名,你也可以直接在命令后直接输入类名,如:
grails create-domain-class Book
向类里添加两个属性:
Book.groovy
class Book {
    String title
    String author
}
你可能想要创建一些测试数据.一个简单的方法就是在%PROJECT_HOME%/grails-app/conf/ApplicationBootStrap.groovy这个Grails应用的启动类的"init"闭包里创建并保存测试数据.
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 
= {
    }
}
创建Controller
Controllers是Grails应用的中心,它们处理WEB请求和请求的URLs,将请求和请求参数映射到控制器类和它里面的一个闭包.
执行"grails generate-all"命令,并输入控制器的名称.在我们的例子中,我们在生成控制器类的时候输入"Book",将会在%PROJECT_HOME%/grails-app/controllers下生成一个名叫BookController.groovy的文件.也可以直接在命令后直接加上控制器类的名称.
grails generate-all Book
打开这个文件,并把里面的内容替换成下面所示的代码,使用在你的程序运行的时候动态生成的动态脚手架.
class BookController {
     def scaffold 
= Book
}
要注意你输入的"Book"是大写的B开头.

当然,你同样可以不替换而使用默认生成的代码.它可是有学习的价值哦.

要开始你的Grails应用,执行下面的命令
grails run-app

这个命令将启动一个Jetty应用服务器的一个实例运行在8080端口上.为了启动一个运行在不同端口上,比如说9090,使用grails -Dserver.port=9090 run-app.要访问books的例表,打开浏览器,并输入:
http://localhost:8080/puras_app/book/list

简单的小应用到此结束.参照它,举一返三,做一些简单的小应用还是可以的!
posted on 2008-04-01 00:02 周锐 阅读(288) 评论(0)  编辑  收藏 所属分类: Groovy&Grails

只有注册用户登录后才能发表评论。


网站导航: