`
魔力猫咪
  • 浏览: 107072 次
  • 来自: 北京
社区版块
存档分类
最新评论

猫学Grails之第一个程序

阅读更多

最近新浪论坛老不稳定,上传图片总不成功。不过JavaEye这里更厉害,发布的时候总出错,如果放多了图片就一定出错,都白写了。唉...

继续转载猫咪自己的文章。

完成了安装可以开始编写程序了。猫咪是按照书上的例子一步步做的。书上用的是一个赛跑俱乐部的例子。
首先定义领域对象,这里有两个对象,跑道和注册。这是个1:N的关系。

代码如下:

//跑道
class Race {
    String name //名称
   Date startDateTime //开始时间
   String city //城市
   String state 状态
   Float distance
    Float cost
    Integer maxRunners = 10000 //最大人数
   static hasMany = [registrations:Registration] //Race有很多Registration
}
//注册
class Registration {
     Race race //所属跑道
   String name //名字
   Date dateOfBirth
    String gender='F'
    String postalAddress
    String emailAddress
    Date createdAt = new Date()
    static belongTo = Race //表示Registration 属于Race
    static optionals =["postalAddress"] //表示该属性可选
}

 在项目根目录下使用“grails create-domain-class”命令建立对象。执行后提示输入对象名,输入Race。然后用同样方法建立Registration。可以看到,在grails-app的domain目录下,有两个新的文件Race.groovy和Registration.groovy。里面类是空的,把代码拷贝进去。OK。这样领域模型就建立好了。Grails会根据领域对象自动建立数据库表。对象关系映射之类的系统会自动帮你做好。

其中,在Race中的hasMany表示一个跑道有多个注册。同时,在Registration中用belongTo表示注册属于跑道。这样就可以在删除跑道的时候同时删除注册。而删除注册的时候不会删除跑道。

然后创建控制器,我们就可以进行简单的CRUD了。在项目根目录下输入“grails create-controller”,然后输入Race就可以建立Race对象的控制器了。然后再同样建立Registration的。

现在可以在grails-app\controllers下看到RaceController.groovy和RegistrationController.groovy文件。这就是控制器的源文件。同时在test目录中会生成单元测试用例。

现在要让控制器进行对象的CRUD。修改这两个控制器如下:

RaceController.groovy
class RaceController {
    def scaffold = Race
}

RegistrationController.groovy
class RegistrationController {
    def scaffold = Registration
}

 

这样就可以了。Grails看到这两行代码,就可以自动生成全部的网页和代码。但是现在只支持非空验证。下次猫咪会把各种验证加上的。现在先跑一下吧。执行“grails run-app”命令。然后就可以进浏览器看结果了。网址http://localhost:8080/MyMiao/

可以看到,页面上有两个控制器的连接。点击进去就可以进行简单的CRUD操作了。

  • 大小: 62.8 KB
  • 大小: 59.6 KB
  • 大小: 61.4 KB
分享到:
评论

相关推荐

    第一个grails程序

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

    使用 Grails 快速开发 Web 应用程序

    Grails,一个基于Groovy动态语言的开源MVC框架,为Web开发提供了高效且简洁的解决方案。自2007年发布以来,Grails以其快速开发能力,降低了Web应用的复杂性,吸引了众多开发者。本文将引导读者深入理解Grails的基本...

    学习grails框架时候自己写的例子

    Grails框架是一个基于Java平台的开源Web应用框架,它利用Groovy编程语言提供简洁、高效的开发体验。在学习Grails的过程中,创建实例是理解和掌握其核心概念的关键步骤。标题提到的"学习grails框架时候自己写的例子...

    Grails学习记录

    【描述】:在学习Grails的过程中,我们可以发现这是一个基于Groovy语言的、用于构建Web应用的开源框架。通过博文链接(https://loven-11.iteye.com/blog/544143)我们可以获取到作者关于Grails的实践经验和心得分享...

    Grails+快速开发+Web+应用程序.pdf

    - **定义**:Grails是一个基于Groovy语言构建的开源Model-View-Controller (MVC) Web开发框架。它旨在简化Web应用程序的开发流程,提高开发效率。 - **特点**: - **动态性**:得益于Groovy语言的动态特性,Grails...

    Grails Grails Grails

    Grails 是一个基于 Groovy 语言的开源Web应用程序框架,它构建在Java平台之上,旨在简化开发过程并提高生产力。Grails 的设计深受Ruby on Rails的影响,提供了MVC(模型-视图-控制器)架构模式,允许开发者快速构建...

    grails学习

    Grails 是一个基于 Groovy 语言的开源 Web 应用框架,它简化了开发过程并提供了丰富的功能。本文将深入探讨 Grails 中的一些常见问题及其解决方案,帮助你更好地理解和掌握 Grails 开发。 1. **数据库连接问题** ...

    一步一步学grails(5)

    本篇教程将介绍如何在Grails应用中创建一个根据产品编号进行组合查询,并以分页形式展示查询结果的功能。 首先,我们关注用户界面部分。在`list.gsp`页面上,我们需要添加一个“查找产品编号”的链接,用于触发查询...

    grails 中文第二版

    - GORM是Grails的核心特性之一,用于处理对象与数据库之间的映射。 - 支持基本的CRUD操作。 **领域(Domain)建模** - 领域类是GORM的基础,代表数据库中的实体。 - 支持多种关联方式,如多对一、一对多等。 - 支持...

    Grails从入门指南(第二版)

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

    Grails权威指南 Grails权威指南

    1. **Groovy语言基础**:Grails基于Groovy,一种动态、灵活的Java平台上的编程语言。Groovy的语法简洁,支持函数式编程,且与Java高度兼容,使得开发者可以利用已有的Java知识快速上手。 2. **MVC架构**:Grails...

    grails中文入门简介

    安装完成后,创建一个Grails应用程序是另一个重要的步骤,这可以通过命令行工具或者集成开发环境(IDE)来完成。Grails提供了一个默认的"Hello World"示例,帮助新手快速理解框架的基本结构。 Grails框架的配置通常...

    一步一步学grails(10)

    Grails 是一个基于 Groovy 语言的开源 Web 应用框架,它简化了开发过程并提供了丰富的插件生态系统。本教程“一步一步学Grails(10)”旨在引导初学者通过项目实践掌握Grails的基本操作。 首先,教程中提到的是对应用...

    学习Grails

    Grails是一个基于Groovy语言的开源全栈MVC框架,专为Java平台设计,旨在实现高效、快速的Web应用开发。它不仅提升了开发效率,还使得整个开发过程变得更加有趣。本篇将围绕Grails的核心特性展开,介绍其主要优势以及...

    grails学习笔记

    《Grails学习笔记:监听器与环境配置》 在Grails框架中,监听器和环境配置是提升开发效率的关键元素。监听器允许开发者在特定事件发生时...因此,对这些概念的深入理解和实践,对于每一个Grails开发者来说都至关重要。

    Grails中文参考手册

    Grails 是一个基于 Groovy 语言的开源 web 应用程序框架,它构建在 Java 平台上,旨在提高开发效率,简化常见 Web 开发任务。Grails 遵循 Model-View-Controller (MVC) 架构模式,允许开发者快速构建动态、数据驱动...

    一步一步学grails(6)

    本章节主要介绍如何为Grails应用设计并实现一个登录功能,包括创建登录所需的域类、设置默认管理员账户、构建登录页面以及处理登录逻辑等。 **详细解析:** 1. **设计登录页面:** - 登录页面的功能需求在于,当...

Global site tag (gtag.js) - Google Analytics