搭建Grails框架(脚手架)——连接MongoDB数据库(IDEA)
来源:互联网 发布:网络征婚成功率 编辑:程序博客网 时间:2024/05/17 23:13
因为误操作,所有的图片都没有了,所以我会尽量详细的说明,如果还是不能成功搭建Grails框架,可以留言。
开发工具:IntelliJ IDEA 2016.2
Grails版本:grails-2.5.1
MongoDB版本:mongodb_3.0.6Java,Grails,MongDB的下载,安装,环境配置,网上有很多的资料,便不祥说。
1. 建立工程
打开idea,新建grails工程,导入JDK,Grails,确定项目名称,项目所在位置。
点击Finish后,grails会按照框架自动建立项目的目录结构,下载需要的包,可能要花一点时间。
2.DateSource修改
打开DateSource文件,目录:
\grails-app\conf\DataSource.groovy
在文件的最下面加上如下代码(在代码的最外层):
grails{ mongo{ host='localhost' port=27017 databaseName="tripPlanner" }}
3.BuildConfig修改
打开BuildConfig文件,目录:
\grails-app\conf\BuildConfig.groovy
这个文件我是照着公司主程给的demo修改的,前两项是否有修改的必要没有做过验证
六,七行:1.6—>1.7
第一行: 3.0—>2.5
在plugins里添加代码(导入mongodb驱动):
complie":mongodb:3.0.3"
4.建立领域类
在domain文件夹下新建一个groovy类,目录:
\grails-app\domain
代码如下:
class Person { String name int age static mapWith = "mongo" 1 static constraints = { }}
1.这行代码非常重要,与刚才DataSource文件的修改相对应
- 如果要通过领域类对象建立表结构时,则必须制定数据类型,也就是说不能用def
- 变量名以驼峰形式命名,否则报错
5.通过脚手架功能自动生成视图,控制器,和服务
进入领域类(domain)编辑窗口,编辑窗口上方有几个单词,类似Person,PersonController,PersonService,Person Views。
点击他们便可以找到脚手架功能(Generate)
- 如果项目完成,运行起来之后。改变了领域类对象,只需要重新用脚手架生成view就好
6.运行
运行前先启动MongDB数据库
点击IDEA右上角的绿色三角便可以运行程序。
启动成功后会见到类似下图的界面:
7.注意事项
当数据库里面没有数据,没有集合时。存入第一条数据会自动创建。
当因端口冲突不能启动项目时,在BuildConfig内添加如下代码
grails.server.port.http=9090 //端口数字不唯一
grails和mongo我是初学,会不时写一点东西,也希望能帮到后来人。
Grails中文参考手册:http://www.ourlove520.com/grails-doc-1.0/
Grails英文文档:http://docs.grails.org/latest/
Grails英文API: http://docs.grails.org/latest/api/
Groovy英文在线文档:http://tool.oschina.net/apidocs/apidoc?api=groo
MongoDB API:https://api.mongodb.com/java/3.2/com/mongodb/package-summary.html
- 搭建Grails框架(脚手架)——连接MongoDB数据库(IDEA)
- MongoDB和grails框架搭建(IDEA)
- grails框架入门小结(一)—后台基础搭建
- vue框架搭建的详细步骤之脚手架(一)
- Vue框架脚手架搭建
- Grails 脚手架
- grails脚手架
- IDEA gradle 搭建SSM框架(Mysql数据库)
- grails框架入门小结(二)—前端页面
- Python-MongoDB连接搭建(一):MongoDB数据库的配置安装
- grails连接mysql数据库
- grails连接mysql数据库
- Grails: 连接mysql数据库
- grails连接各个数据库
- Vue2.0史上最全入坑教程(上)—— 搭建Vue脚手架(vue-cli)
- Vue2.0学习笔记(上)—— 搭建Vue脚手架(vue-cli)
- Vue2.0 史上最全入坑教程(上)—— 搭建 Vue 脚手架(vue-cli)
- Vue2.0史上最全入坑教程(上)—— 搭建Vue脚手架(vue-cli)
- ConcurrentLinkedQueue源码阅读
- 如何让自己的类用 copy 修饰符?如何重写带 copy 关键字的 setter
- 关于博弈基础知识的总结:巴什博弈(Bash Game)、威佐夫博奕(Wythoff Game)、尼姆博奕(Nim Game)
- Android学习笔记之AndroidManifest.xml文件解析
- 数据结构—线性表(知识梳理)
- 搭建Grails框架(脚手架)——连接MongoDB数据库(IDEA)
- final-finally-finalize 区别
- [Android Pro] AIDL进程间传递自定义类型参数
- Tyvj 1041 表达式计算2
- hdu-4793-Collision
- [LeetCode]--25. Reverse Nodes in k-Group
- BZOJ2100: [Usaco2010 Dec]Apple Delivery Spfa+优化
- (二十六)、正则表达式
- 1的个数问题、数组最大最小值java---编程之美