Grails入门系列(一)
Grails入门系列(一)
JAVAweb开发技术相对于php,python,note.js等新式技术更为复杂,向来以繁杂的配置著称,但是Java任然被广泛的应用于大型企业级的项目,主要是因为技术成熟,稳定,可拓展性强,可以跨平台使用。但如果你仅仅是一个个人开发者,仅仅需要搭建一个小型的,业务逻辑很简单的网站,那么使用springmvc繁杂的项目配置显然会让你事倍功半,效率极低。而Grails的出现,以约定优于配置的思想解决了项目繁杂配置的问题,大大提升了Java程序员开发的效率。
本教程主要基于idea2016以上版本,新版的idea对grails开发做了大量优化
idea下载及配置:http://www.cnblogs.com/wwyz/p/5640412.html
Grails官方文档:http://docs.grails.org/3.2.8/
中文版参考文档:http://www.ourlove520.com/grails-doc-1.0/?qqdrsign=00b1c
预备知识
- HTML基础知识。了解HTML,CSS,js的作用和基本语法,并且对HTTP请求已经表单提交(GET/POST)有所了解。
- 数据库基础知识。Grails对数据库的操作进行了封装和简化,但是开发人员任然有必要掌握数据库的基础知识,对数据库表、主键、外键、索引、增删改查,表与表之间关系(一对一,一对多,多对多)有所了解。
- Java语言和Groovy语言基本语法。Java和groovy是grails框架用到的开发语言,因此你需要掌握这两门语言的基本用法,能够读写代码才能很快的上手开发。
- SpringMVC框架和MVC基本思想。Grails基于springmvc,如果你对springmvc有所使用,对于springmvc框架有所理解,那么你可以很快的上手grails,并且感受到grails相对于springmvc的优势。在grails3.0后又集成了springboot框架,springboot也可以了解一下。当然对这些框架都没有使用也可以学习grails,但你至少要搞明白mvc的基本思想,模型?视图?控制器?
Hibernate基础知识(非必需)。
项目搭建
创建项目
grails sdk下载:http://www.grails.org/download.html



- 配置gradle,尽量挂VPN,中间可能需要FQ,较慢
gradle下载:https://gradle.org/releases

此步骤较为浪费时间,不过仅用配置一次。构建好后会看到下图效果。

- 运行项目
方式一:通过Applacation运行,打开grails-app/init/Applacation,点击绿色三角

方式二:类似于添加tomcat

出现下面页面则项目已经正常运行了。

Grails入门系列(一)的更多相关文章
- Angular2入门系列教程7-HTTP(一)-使用Angular2自带的http进行网络请求
上一篇:Angular2入门系列教程6-路由(二)-使用多层级路由并在在路由中传递复杂参数 感觉这篇不是很好写,因为涉及到网络请求,如果采用真实的网络请求,这个例子大家拿到手估计还要自己写一个web ...
- ABP入门系列(1)——学习Abp框架之实操演练
作为.Net工地搬砖长工一名,一直致力于挖坑(Bug)填坑(Debug),但技术却不见长进.也曾热情于新技术的学习,憧憬过成为技术大拿.从前端到后端,从bootstrap到javascript,从py ...
- Angular2入门系列教程6-路由(二)-使用多层级路由并在在路由中传递复杂参数
上一篇:Angular2入门系列教程5-路由(一)-使用简单的路由并在在路由中传递参数 之前介绍了简单的路由以及传参,这篇文章我们将要学习复杂一些的路由以及传递其他附加参数.一个好的路由系统可以使我们 ...
- Angular2入门系列教程5-路由(一)-使用简单的路由并在在路由中传递参数
上一篇:Angular2入门系列教程-服务 上一篇文章我们将Angular2的数据服务分离出来,学习了Angular2的依赖注入,这篇文章我们将要学习Angualr2的路由 为了编写样式方便,我们这篇 ...
- Angular2入门系列教程4-服务
上一篇文章 Angular2入门系列教程-多个组件,主从关系 在编程中,我们通常会将数据提供单独分离出来,以免在编写程序的过程中反复复制粘贴数据请求的代码 Angular2中提供了依赖注入的概念,使得 ...
- ABP入门系列(2)——通过模板创建MAP版本项目
一.从官网创建模板项目 进入官网下载模板项目 依次按下图选择: 输入验证码开始下载 下载提示: 二.启动项目 使用VS2015打开项目,还原Nuget包: 设置以Web结尾的项目,设置为启动项目: 打 ...
- Web大前端时代之:HTML5+CSS3入门系列
准备来一波新技术,待续.... Old: 联系源码:https://github.com/dunitian/LoTHTML5 文档下载:https://github.com/dunitian/LoTD ...
- 07. Web大前端时代之:HTML5+CSS3入门系列~H5 地理位置
Web大前端时代之:HTML5+CSS3入门系列:http://www.cnblogs.com/dunitian/p/5121725.html 源码:https://github.com/duniti ...
- 01.Web大前端时代之:HTML5+CSS3入门系列~初识HTML5
Web大前端时代之:HTML5+CSS3入门系列:http://www.cnblogs.com/dunitian/p/5121725.html 文档申明 <!--文档类型申明,html代表是ht ...
随机推荐
- 02 - Unit010:关联映射
关联映射 什么是? 数据库中有关联关系的表,通过实体对象引用的方式体现出来,叫关联映射. 为什么? 将多表的记录封装成实体对象. 何时用? 对数据库中的表进行多表查询时. 怎么用? cn_user-- ...
- 关于web api 中 日期格式问题解决方案
在构造函数或者 全局开始的时候调用这个 public BossApiController() { JsonMediaTypeFormatter jsonFormatter = GlobalConfig ...
- Keil for ARM与C++
1. 如果你的程序中使用了C++全局变量,那么*不要*使用MicroLIB,否则Keil会说某某Symbol找不到 2. 不使用MicroLIB带来的一个问题是KEIL会使用semihosting S ...
- 汇编_指令_JMP
JMP指令 JMP是汇编语言中的无条件跳转指令.无条件跳转指令可转到内存中任何程序段.转移地址可在指令中给出,也可以在寄存器中给出,或在储存器中指出. 中文名:无条件跳转指令 外文名:JMP 和调用指 ...
- 「小程序JAVA实战」小程序首页视频(49)
转自:https://idig8.com/2018/09/21/xiaochengxujavashizhanxiaochengxushouyeshipin48/ 视频显示的内容是视频的截图,用户的头像 ...
- 如何设置mysql允许外网访问
修改表,登录mysql数据库,切换到mysql数据库,使用sql语句查看"select host,user from user ;" console: >use mysql; ...
- VLC播放RTSP视频延迟问题 (转)
原帖地址:http://blog.chinaunix.net/uid-26611383-id-3755283.html ======================================== ...
- NotePad++替换行前、行后空格,替换空行
用 Notepad++ 打开,把每一个将要放在表中单元格的内容放一行(注: ^ 代表行首 $ 代表行尾) 去除行尾空格和空白行:按CTRL+H 选择正则表达式– 查找目标:\s+$ 替换为空 去除行首 ...
- 通过@Configuratin配置Bean
Spring的依赖注入可以基于xml配置,也可以基于注解配置,还可以基于java类配置. 普通的bean类,只要标注了@Configuration注解,就可以为Spring容器提供Bean定义的信息. ...
- 聊一下Python的线程 & GIL
再来聊一下Python的线程 参考这篇文章 https://www.zhihu.com/question/23474039/answer/24695447 简单地说就是作为可能是仅有的支持多线程的解释 ...
