以指令的方式Getting Started

1. 创建一个项目

grails create-app HelloGrails

2. 因为我环境变量中配置的jdk是1.8的,所以我要把这个项目搞到IDEA中去,方便我选择jdk来运行它,那么我首先cd到HelloGrails目录中,然后

grails integrate-with --intellij

3. 这样我就可以用IDEA打开了,方便我做环境的配置,也方便查看目录结构,还可以在写代码的时候用它的智能提示功能;现在我先在IDEA中配置好它的JDK,按快捷键F4->Project->选择电脑里的jdk1.7目录(一台电脑可以安装多个版本的JDK),这时候可以点击“三角形”按钮,run一下看看

命令行下应该是

grails run-app

但由于我的环境变量配置的JDK是1.8的,所以可能会出错,故本笔记中所有的run操作都在IDEA中进行

4. 建立模型,grails中的mvc对应的m是domain,也就是其他框架里的model,命令行里建立一个Student类吧

grails create-domain-class org.HelloGrails.Student

5. 在这个Student类里添加两个字段

6. 自动生成一个对Student类增删改查功能的Controller

grails generate-controller org.HelloGrails.Student

这样会自动生成一个控制器叫做org.HelloGrails.StudentController,它会在我们敲打的命令行指令后追加一个Controller标识它是控制器,内部已经有对Student类的增删改查代码了;之所以在建立控制器的时候会对应到类是根据建立控制器的名字,所以这里命令行中建立控制器的名字一定要与相应类是一样的

7. 同步骤6类似,建立了控制器之后,再建立一个view来展示这个Student类

grails generate-views org.HelloGrails.Student

这样下对应的view目录下将会多了几个文件

8. 在IDEA下run一下

需要注意的是domain类中的属性名称似乎都必须是小写的,否则报错

grails2.3.11第一课的更多相关文章

  1. grails2.3.11第二课

    第二课主要介绍grails相关插件的使用,这是敏捷开发所必需的途径. 可以把grails的插件看作是grails正常项目的迷你型,因为看插件的源码,它的目录结构和正常项目相差无几. 官方开源插件地址 ...

  2. Spark 3000门徒第一课随笔

    昨晚听了王家林老师的Spark 3000门徒系列课程的第一课,把scala基础过了一遍,对ArrayBuffer有了新的认识: Array本身创建后不可修改ArrayBuffer可修改import s ...

  3. C语言基础课程 第一课 Linux环境配置小实战httpserver

     网段我需要改成如下 10.重启网络服务 并且查看ip 11. 打开windows的浏览器数人Linux的IP地址出现REDHAT的欢迎界面 11.进入目录 12.编写一个简单的html脚本 13 ...

  4. python学习第一课要点记录

    写在要点之前的一段话,留给将来的自己:第一次参加编程的培训班,很兴奋很激动,之前都是自己在网上找免费的视频来看,然后跟着写一些课程中的代码,都是照着模子写,没有自己过多的思考.感觉这样学不好,除了多写 ...

  5. 【C++探索之旅】开宗明义+第一部分第一课:什么是C++?

    内容简介 1.课程大纲 2.第一部分第一课:什么是C++? 3.第一部分第二课预告:C++编程的必要软件 开宗明义 亲爱的读者,您是否对C++感兴趣,但是C++看起来很难,或者别人对你说C++挺难的, ...

  6. Octave Tutorial(《Machine Learning》)之第一课《数据表示和存储》

    Octave Tutorial 第一课 Computation&Operation 数据表示和存储 1.简单的四则运算,布尔运算,赋值运算(a && b,a || b,xor( ...

  7. pandas第一课

    pandas第一课 首先是数据的准备 movies.dat user.dat ratings.dat 注意,这些数据都是通过::来隔开每一列的,每一列有各自的含义 现在通过pandas来读入数据 首先 ...

  8. Linux系统初学-第一课 虚拟机安装CentOS6.5以及Root密码找回

    Linux系统初学第一课 虚拟机安装CentOS6.5以及Root密码找回 虚拟机安装CentOS6.5 一.安装虚拟机 1-1.安装虚拟机VMware Station,新建虚拟机,选择典型配置. 1 ...

  9. vue.js学习(第一课)

    学习资料 来自台湾小凡! vue.js是javascript的一个库,只专注于UI层面,核心价值永远是 API的简洁. 第一课: 不支持IE8. 1.声明式渲染: el元素的简称 element : ...

随机推荐

  1. itext 落雨 out of membery Memory Optimization

    Memory Optimization If a document deals with a lot of data or large elements, such as images, it is ...

  2. Samza文档翻译 : Comparison Introduction

    http://samza.incubator.apache.org/learn/documentation/0.7.0/comparisons/introduction.html 这里有一些使得Sam ...

  3. 【leetcode】Longest Palindromic Substring (middle) 经典

    Given a string S, find the longest palindromic substring in S. You may assume that the maximum lengt ...

  4. Android 图片缩放

    以下演示将一个ImageView的高度设置为两倍: 布局文件main.xml <?xml version="1.0" encoding="utf-8"?& ...

  5. WAMP 80端口被Microsoft-HTTPAPI/2.0占用的解决办法

    WAMP 80端口被Microsoft-HTTPAPI/2.0占用的解决办法 - likebeta - 博客园 http://www.cnblogs.com/likebeta/archive/2012 ...

  6. uva 11817 - Tunnelling the Earth

    题意:从地球上的一个点到另一个点,求两点的球面距离和直线距离之差.假定地球是正球体,半径为6371009米. #include<iostream> #include<cmath> ...

  7. 深入研究Java类加载机制

    类加载是Java程序运行的第一步,研究类的加载有助于了解JVM执行过程,并指导开发者采取更有效的措施配合程序执行. 研究类加载机制的第二个目的是让程序能动态的控制类加载,比如热部署等,提高程序的灵活性 ...

  8. Linux上程序执行的入口--Main

    main()函数,想必大家都不陌生了,从刚开始写程序的时候,大家便开始写main(),我们都知道main是程序的入口.那main作为一个函数,又是谁调用的它,它是怎么被调用的,返回给谁,返回的又是什么 ...

  9. C#中保留2位小数

    public static void Method() { double a = 1.991; a = Math.Round(a); Console.WriteLine("a = {0}&q ...

  10. 配置oschina for pc 开发环境

    oschina for pc 是一款用python + pyqt + html + css +js开发的桌面程序,感觉十分强大.python开发快捷, 网页技术绚丽,正是桌面程序需要的. 感谢铂金小鸟 ...