幻想家

爱吃饭
posts - 0, comments - 0, trackbacks - 0, articles - 3

Grails入门1

Posted on 2011-04-11 19:42 阅读(276) 评论(0)  编辑  收藏 所属分类: 快速开发

1.      用NetBeans作为开发工具,安装了Groovy之后就能够开发Grails程序,新建一个Grails程序“addrBook”,如图

说明: 计算机生成了可选文字: :项目面而下文件一云addrB00k国铂配置国厂白控制器困口域类十口消息包十口服务白标记库口实用程序类由{扣视图和布局国L自库l{扫脚本国{自Groo叮源包国{自」ava源包由汤Target国肋集成测试国t自单元测试由肋Web应用程序服务

2.      配置

说明: 计算机生成了可选文字: 口配置hibernate11尹,pring:国resources.groo叮国Bootstr。p.groo叮国Buildcon石g.groo叮:圃con'g.gr。。vy圃oat。source.groo叮:固urIM。pping、.groo叮

配置文件不再是XML,因为在Groovy看来,groovy文件不一定就是要编译的文件,打开几个来看发现其形式结构跟json格式类似。

就目前所知,BootStrap.groovy是启动时要运行的一些脚本。(命名因为遵从“约定优于配置”,所以看不到关于配置启动顺序的文件)。

BuildConfig.groovy是配置生成项目的信息,在里面发现了类似Maven的术语“依赖(dependencies)”。

Config是全局的配置,包括文件编码,文件的存取规则,发布地址和访问地址等等。

DataSource.groovy是配置数据源的,跟spring的DataSource类似,有关于数据库的信息和缓存的配置就在这里。

UrlMappings.groovy是URL和MVC的映射规则描述文件,因为在GSP文件中配置一个链接是很灵活的采用g:link,而controller需要将页面a标签的具体访问地址按照规则映射到对应的控制器上面,所以有定义这个规则的必要。

3.      控制器、领域模型和消息

说明: 计算机生成了可选文字: 控制器域类消息包mes,ages.propertiesme::age,_da.propertle:messages一e.propertiesmessages一s.propertiesmes、age、一r.properties国国国田国国:国·由;:白·;·;·;·;·…me,sages_it.propertiesmessagesja.propertiesmessages_nl.propertiesmessages一t--BR.propertiesmessages一t-pT.propertiesme,,ages_ru.propertie、messages一h.properties阶阶阶阶阶阶阶阶阶阶圃阶叫潞申田申田由田申田申田园:·····;··;:;:·国二

很明显可以看出Grails风格是三层架构:领域模型-服务-控制器

消息包:是国际化(I18N)的配置,其中最后一个反黑的就是中文。

域类:ORM的模型类,在Grails中占很大一部分,因为弱化了数据库的作用,在数据存储方面完全由领域模型来定义,这让程序员能更好的发挥OO思想。

服务:其实并不作为Grails的中间层,如果按照Grails默认架构方法,用命令行grails generate-all XXX的方法生成一套流程的话,可以发现是没有服务层的,有控制器直接控制对域模型的操作。

控制器:根据Grails的方法已经能生成大量的可用方法,当然还得根据自己的实际需要对该类进行修改。

4.      其他

说明: 计算机生成了可选文字: 白长蔽己库国L妇实用程序类困白视图扣布局序白库口脚本白Gr00Vy源包·}自Java源包由白丁arget国白集成测试国白单元测试田尸白Web应用程序

标记库:各种taglib

实用程序类:可以放各种工具,比方说自动测试,数据生成,jetty服务器启动等等工具类

视图和布局:当用generate的时候自动生成的页面文件就在这个目录下

库:引用的除了Grails之外的库,比如数据库驱动等

脚本:目前还不知道这个脚本指的是本地系统的运行脚本还是Groovy脚本

Groovy源包和Java源包:这里是Groovy项目的风格,在Groovy项目中一般将Groovy和Java的源文件分开两个源文件夹

target:类似Maven生成最终程序的目录,里面存放着程序运行以后生成的二进制文件和日志文件。估计最终打包也是在这个目录下。

集成测试和单元测试:都是放测试类的文件夹,没做过测试不了解。

Web应用程序:应用程序的根目录。


只有注册用户登录后才能发表评论。


网站导航: