`

GRAILS第一个简单项目

 
阅读更多
       GRAILS第一个简单项目

  关键的几个命令见红色部分

   下面将开始一个简单的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
简单的小应用到此结束.参照它,举一返三,做一些简单的小应用还是可以的!
分享到:
评论

相关推荐

    第一个grails程序

    在"第一个grails程序"中,我们通常会看到一个典型的Grails项目结构,包括以下几个关键部分: 1. **src/main/groovy**:这个目录存放所有Groovy源代码,包括应用程序的主要业务逻辑和控制器。 2. **src/main/...

    grails 中文第二版

    - 使用`grails create-app`命令快速创建一个新的Grails项目。 - 自动生成项目的基本结构,包括目录结构和必要的配置文件。 **Hello World示例** - 创建一个简单的控制器,实现基本的路由逻辑。 - 在视图中展示...

    Grails从入门指南(第二版)

    3. **第一个Grails应用**:通过创建一个简单的“Hello, World!”应用,体验Grails的快速开发流程,理解Grails脚手架和自动代码生成。 4. **Grails MVC**:深入理解Model-View-Controller架构,包括Domain Classes...

    grails app

    创建一个Grails应用的第一步通常是使用`grails create-app`命令,这会生成项目的目录结构和基础文件。虽然我们没有图片,但我们可以从文件名"Hello"推测,这可能是应用的初始控制器或服务,或者是一个简单的"Hello,...

    Grails基础教程.pdf

    - **编写第一个过滤器**:创建一个简单的过滤器来处理特定的请求。 - **过滤器的URL选择**:如何配置过滤器只对特定的URL路径生效。 **7.7 创建自定义的URL映射** - **myHubbub:滚动你自己的静态链接**:自定义...

    Grails入门指南-中文版

    #### 四、创建第一个Grails应用 **1. 创建项目** - 使用命令行工具创建一个新的Grails项目。 - 示例命令:`grails create-app myapp` **2. 领域模型** - 定义应用程序的核心实体(例如User、Product等)。 - ...

    grails敏捷开发

    Grails 是一个基于 Groovy 语言的开源Web应用框架,设计用于快速开发、高效构建动态、敏捷的Web应用程序。它借鉴了Ruby on Rails的许多优秀理念,同时提供了Java平台的强大功能和兼容性。在本文中,我们将深入探讨...

    Beginning_Groovy_and_Grails开源项目教学代码第二部分

    Groovy是一种简洁、动态的Java平台上的编程语言,它提供了更简单的语法和更高的生产力,而Grails则是一个基于Groovy的全栈Web开发框架,它简化了构建复杂的Web应用程序的过程。 在本教学代码的第二部分中,我们将...

    grails-datastore-gorm-tck-1.0.9.RELEASE.zip

    标题 "grails-datastore-gorm-tck-1.0.9.RELEASE.zip" 提供的信息表明,这是一个与Grails框架相关的数据存储(Datastore)和GORM(Grails Object Relational Mapping)测试兼容性工具包(Test Compatibility Kit,...

    Grails技术精解与web开发实践2-10章

    3. **第一个Grails应用**:通过创建一个简单的应用,读者将学习Grails的基本项目结构,如`grails-app`目录下的各个子目录,以及`BuildConfig.groovy`等配置文件的作用。还将引导读者运行应用,理解Grails的命令行...

    grails框架数据查询

    def users = User.list(max: 10, offset: 0) // 获取第一页的10条记录 ``` 排序示例: ```groovy def users = User.findAllByAgeGreaterThan(18, [sort: 'age', order: 'desc']) ``` ### 5. 异步查询与缓存 Grails...

    Grails中文参考手册

    - **创建控制器**: 使用`grails create-controller`命令创建一个简单的控制器。例如,创建一个名为`Hello`的控制器: ```bash grails create-controller Hello ``` - **定义视图**: 在`grails-app/views/hello`...

    grails-bin-1.1

    1. `bin`:存放可执行脚本,如`grails`命令,用于启动Grails shell、创建新项目、运行应用等。 2. `lib`:包含了Grails运行所需的第三方库,如Spring、Hibernate、Groovy等。 3. `docs`:可能包含框架的文档和API...

    Getting-Started-with-Grails-Chinese.rar_Getting Started_grails

    本书将引导读者逐步了解Grails的基本概念和实践操作,包括环境搭建、创建第一个Grails应用、控制器和视图的使用、服务层的实现、领域模型的定义、数据库交互、GORM(Grails Object-Relational Mapping)框架的使用...

    Grails 3.X开发实战

    #### 第一个Groovy脚本程序:HelloWorld ```groovy /** * HelloWorld演示脚本程序。 * @author 钱佳明 * @email qianjiaminghz@qq.com */ // 声明一个变量名称为hello且值为HelloWorld的字符串类型变量。 def ...

    grails,xfire和groovyws共存

    GroovyWS可以生成和解析SOAP消息,支持WSDL第一类公民,并且可以无缝集成到Groovy和Grails项目中。 将这三者整合在一起,开发者可以在Grails应用中利用GroovyWS来创建和消费Web服务,同时通过XFire的底层支持来处理...

Global site tag (gtag.js) - Google Analytics