Grails环境部署开发

四十二、grails框架学习总结 14年12月工作需要,学习了grails框架,使用grails实现了一套前后台页面的开发并且部署到linux服务器。grails确实是一个简洁、高效、易用的框架,满足生产需要,并且java程序员学习成本较低。现就过程中遇到的主要问题进行总结,分享给同样被这些问题困住的同行 一、grails框架的使用过程 1.下载grails(本人使用的版本是2.4.2)、解压、配置环境变量 2.通过命令gr 阅读详情
 
该部分主要介绍了Grails的开发环境配置,开发第一个简单的web服务,将应用部署到发布平台.
 
Eclipse:业界广泛采用的java开发环境,开源的,最优秀的开发软件之一
Groovy 的Eclipse 插件: Groovy 的 Eclipse 插件能够编辑,编译以及运行 groovy 脚本和类,这个插件只适用于 eclipse3.1 和 eclipse3.2
Grails:比较流行的框架,groovy是该框架下的脚本语言,不过这种框架开发效率高,运行效率底,好在Grails开发人员已经意识到这个问题,正在改进.还支持动态调试
JDK1.5:java开发包,至少是1.4版本
Eclipse下载: http://www.eclipse.org/
 
1. 安装java1.5并设置JAVA_HOME到安装路径
2. 解压缩grails到指定目录(如:c:/grails-0.5-SNAPSHOT),且设置环境变量GRAILS_HOME
3. 添加Grails中的bin目录到PATH环境变量((如Windows上 %GRAILS_HOME%/bin)
4. 在命令行输入"grails",若显示出帮助信息,您就可以使用Grails了
2.2.2   安装Eclipse的groovy插件
· eclipse 下: Help->Software Updates->Find and Install -> Search For New Features to install->然后按下next
·选择 New Remote Site
· name 中输入 Groovy
· URL= http://dist.codehaus.org/groovy/distributions/update,然后按下 OK,Finish
·在 Select the Features to Install 选上 Groovy ,按下 next
·接受 agreement 并按下 next
·如果默认的地址正确则按下 Finish
·下载完毕后点击 Install 或 Install All
创建 Groovy 工程
·选择 File -> New -> Project
·选择 Java Project 并按下 next
·在 Project Name 中输入MyGroovy
·在 Project Layout 中选择 Create separate source and output folders 并按下 Finish
·在 Package Explorer 寻找新创建的工程,右键选择 Groovy -> Add Groovy Nature
到目前为止创建的工程中会有一个 src 目录,一个 bin-groovy 目录和几个库文件。 bin 目录被 eclipse 隐藏起来。你需要将 bin-groovy 目录作为默认输出目录连接到 src 目录使得调试器能知道源代码和类文件的关联。
· 在 Package Explorer 中,右击MyGroovy工程,选择 Build Path -> Configure Build Path
在 src 中右键创建 groovy class ,并输入例子
class HelloWorld {
 
 static void main(args) {
    def list = [ "dog", "cat", "bird" ]
       for(l in list){
              println l
       }
 }
}
运行快捷键:Alt+shift+x,G
3.1    Grails基本命令
1.       创建一个新的应用: grails create-app $projectname
创建一个新的GRAILS项目,进入GRAILS_HOME:grails create-app $projectname
以下的命令要进入$projectname,才能执行
2.       创建域类:grails create-domain-class $domainname
3.       生成基本Web应用程序:grails generate-all $domainname    
       注意:由于bug-245,Grails 0.2.1不能生成控制器。您必须手动生成控制器,其方法是对每个域类使用generate-controller 命令
grails generate-controller $domainname
4.       创建服务:grails create-service $servciename
5.       创建Controller:grails create-controller $controllername
6.       打包:cd $projectname;grails war
 
进入$GRAILS_HOME,执行 grails create-app HelloWorld, 系统生成的目录如下 :
%PROJECT_HOME%
   + grails-app
       + conf                 ---> 存放一些配置信息,比如数据源
       + controllers          ---> 存放控制器
       + domain               ---> 存放域对象(domain class)
       + i18n                 ---> 存放一些i18n相关的内容
       + services             ---> 存放服务组件
       + taglib               ---> 存放标签库
       + views                ---> 存放视图组件
       + layouts              ---> 存放布局组件
   + lib
   + spring                    ---> spring配置信息(可选)
   + hibernate                 ---> 配置hibernate配置信息
   + war
       + WEB-INF
 
这里使用的是grails自带的HSQLDB内存数据库,配置文件为DevelopmentDataSource.groovy,内容如下:
class DevelopmentDataSource {
   boolean pooling = true
   String dbCreate = "create-drop" // one of 'create', 'create-drop','update'
   String url = "jdbc:hsqldb:mem:devDB"
   String driverClassName = "org.hsqldb.jdbcDriver"
   String username = "sa"
   String password = ""
}
3.2.3   创建域类,控制器,视图
域类就是对应数据库的表的 ,Hello 域就是对应到数据库的 Hello 表
进入HelloWorld目录后
Ø       grails create-domain-class Hello     ( 创建 Hello 域类 )
编辑这个域 , 以适应自己的需求
class Hello {
     Long id
     String name
     String saywhat
}
Ø       grails generate-all Hello                  ( 创建 Hello 控制器和视图 view)
Ø       grails run-app                               ( 运行 web 服务 )
默认是8080端口,指定端口grails -Dserver.port=80 run-app
在IE里输入http://127.0.0.1:8080
 
到此一个有增,删,改的web服务弄好了,系统给你做了大部分工作.
 
Grails里的服务类似于java的jar包,是封装好的接口.
       修改HelloWorld/grails-app/services/LoginService.groovy的内容为:
class HelloService {
      
       boolean transactional = true
      
       def sayHello(String name){
              return name + "say: hello world!!!"      
       }
      
       def serviceMethod() {
              // TODO
       }
}
 
class HelloController {
       HelloService helloService // 定义服务
      
       def index = { redirect(action:testhello,params:params) }     // 默认的 action 为 testhello
 
       def testhello = {// 定义一个名为 testhello 的 action
              // 从域类 ( 就是数据库表 ) 里查询数据
              def hello = Hello.executeQuery("select id,name,saywhat from Hello")
             
              def helloList = new ArrayList()
 
              for(ehello in hello){
                     helloList.add(helloService.sayHello(ehello[1]))
              }
              //render 到 hello 的视图就是 hello.gsp, 参数是 model 里的左边的 helloList, 右边的 helloList 是 ”def helloList”
              render(view:'hello',model:[helloList:helloList])            
       }
……
}
在views/hello目录下添加hello.gsp,代码如下:
<html>
    <head>
         <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
          <meta name="layout" content="main" />
         <title>Show Hello</title>
    </head>
    <body>
        <div class="body">
          
            <g:each in="${helloList}" var="varHelloList">
                            <h1>${varHelloList}</h1>
                     </g:each>
        </div>
    </body>
</html>
Web效果图:
 
1.       到工程目录下,执行:grails war
2.       把*.war文件放在apache的webapp下,启动apache就可以了
 
 
 
29、Grails 应用开发与部署全解析 本文全面解析了Grails应用的开发与部署流程,涵盖日志管理、应用打包与部署、HTTPS配置、Gant自动化任务、应用升级、环境搭建、命令行脚本以及富Groovy客户端构建等内容。通过详细的技术配置和脚本示例,帮助开发者高效完成从开发、测试到部署的各个环节,并提升开发效率与系统稳定性。 阅读详情

相关推荐

28、Grails 批处理与应用部署全解析

本文深入解析了如何在Grails框架中构建批处理系统,并详细介绍了应用从开发到生产环境的完整部署流程。涵盖了批处理任务的构建、报告服务与邮件服务的调用、环境配置差异、关键配置文件的作用及实际操作中的注意事项。通过合理利用Grails和Spring的功能,可以高效地实现自动化任务与应用部署,确保系统稳定性和可维护性。

qsc901234的博客 62

第一次运行gradle的项目代码,2023版idea的设置

2023版idea中gradle的设置

m0_71010898的博客 2396

论文分享 - OctoMap八叉树建图原理

论文:OctoMap:An Efficient Probabilistic 3D Mapping Framework Based on Octrees。

一只废佐_的博客 2539

Grails 启动

导入IDEA:打开IntelliJ IDEA,选择“File”->“New”->“Project from Existing Sources”,选择刚才创建的Grails项目所在的文件夹,即可导入项目。这个问题也困扰我很久,后来发现是Grails导入到idea时需要强依赖一个名为Grails的idea插件。看下生成的文件夹名称,即为需要的gradle版本。运行项目:在IDEA中打开“Grails”面板,选择“Run”->“Run ‘app’”,即可运行Grails项目。下载指定版本后,配置环境变量。

Mungo的专栏 601

金桔智慧物流之容器(托盘、周转箱等)定位及周转方案原理

金桔智慧物流之容器(托盘、周转箱等)定位及周转方案原理 在物流行业种,托盘是标准化运输的关键的配件,而容器存在丢失、盘点、闲置等管理问题。如何通过信息化的手段提升容器的寿命,提高调配效率,降低闲置是物流容器行业的关键点。 金桔蓝牙网关配合金桔蓝牙资产管理终端可以解决物流行业痛点问题。 容器管理面临的问题: 技术方案 场景描述之库房 场景描述之车辆 场景描述之终端 方案优势 ...

jinjufocus的博客 1180

【PB03F 超详细-环境搭建】蓝牙5.2安信可PB-03F-Kit开发板二次开发环境搭建

PB-03是由深圳市安信可科技有限公司开发的蓝牙模块。本博文介绍安信可PB-03F-Kit开发板的基本情况、开发环境搭建,以及以点亮LED为例介绍程序编写和固件烧录的操作流程。 安信可PB-03F-Kit开发板使用的PHY6252这样一款高集成度的低功耗蓝牙系统级芯片(SoC),专为物联网(IoT)、移动设备、可穿戴电子设备、智能家居等各种应用而设计。......

qq_44078824的博客 1万+

Groovy轻松入门——Grails实战基础篇(2)

通过“grails create-app”这个命令,Grails自动帮我们创建了开发所需的工程环境。其实您现在就已经拥有了一个可运行的Web应用程序,然后进入demo目录(“cd demo”),输入“grails run-app”,回车,启动这个‘五脏俱全’的程序雏形,打开浏览器,输入 http://localhost:8080/demo ,回车,看到了吧 :) 让我们继续吧,请停止这个程序(Ct

Kc 702

逆变器专题(3)-锁相环-PLL

锁相环作为并网逆变器的第一道门户,其锁相的精度将直接影响逆变器是否并网成功,若锁相精度较差,则会直接导致系统的功率因数下降,产生无功等等。在有关文献中指出,提高PLL带宽可以准确且快速进行锁相,而当电网电压含有谐波时,可适当降低带宽抵制谐波的干扰。成为变化量,而如果两者旋转速度达到一致时,所在的交轴分量。ki很大,即带宽很大时,稳定裕度不够,锁相环锁不住。为交流量,当频率锁定而相位没有锁定时,即。,即控制环前馈,可实现将锁相速度的加快。控为0,则可实现系统完美锁相。mod,取余,可减少存储空间。

cyc19980105的博客 6183

Grails框架使用教程

第一章 grails框架简介 1.1 简介 Grails是一套用于快速Web应用开发的开源框架,它基于Groovy编程语言,并构建于Spring、Hibernate等开源框架之上,是一个高生产力一站式框架。 第二章 grails使用 2.1 教程环境介绍 ▲系统:windows10 ▲grails框架:2.4.4 ▲jdk版本: java version "1.8...

冰羽IOX的专栏 1万+

2025数学建模美赛C题完整建模思路——奥运会奖牌榜的模型

2025数学建模美赛C题完整建模思路——奥运会奖牌榜的模型

Yilu264的博客 1万+

学习C++的递归函数(包含汉诺塔讲解)

简单来讲,递归函数就是函数本身自己调用自己,那么函数又是什么呢?#include <stdio.h> //这行是头文件,不同的头文件可以用不同的函数int main() //这里就是一个main函数//这里是你要编写程序的内容return 0;(这是个小细节如下)所以我们平时用来练习的就是一个main函数,而且是一个整型类型的函数,而这也是最后一句话为什么要加一句 return 0;了,因为它最后要返回整数类型,其它整数也可以,但是大家规定为0,这是C++自带的函数。

2302_81032013的博客 2594

安全基础--29--Grails开发基础操作与配置

本篇介绍了: 1、Grails安装 2、Grails项目的创建与运行 3、以指定环境运行Grails项目 4、Grails项目数据库搭建与配置

武天旭的博客 2023

A类功率放大器

在A类放大器中,导通角是完整的360°或100%的输入信号,而在其他类别的放大器中,晶体管在一个较小的导通角内导通。通过在输出级使用两个互补的晶体管,其中一个晶体管是NPN或N通道类型,而另一个晶体管是PNP或P通道(互补)类型,以所谓的 "推挽 "配置连接,可以获得比A类放大器更大的功率输出和效率。这种类型的电路效率很低(低于30%),而且对直流电源的消耗很大,输出的功率却很小。由于我们感兴趣的是向负载提供最大的交流功率,同时从电源中消耗尽可能少的直流电,所以我们主要关注的是放大器的 "转换效率"。

LSW20072007的博客 2469

grails安装部署_grails开发之环境变量配置

打开grails官网下载需要的版本,我下载的是3.3.0grails官网:https://grails.org/1、解压到本地,注意我下载的这个压缩文件里面有两层,添加环境变量的时候请注意2、打开环境变量配置GRAILS_HOME和pathGRAILS_HOME F:\dev tools\grails-3.3.0path %GRAILS_HOME%\bin3、打开dos,测试gr...

weixin_39777488的博客 342

深入解读WT软件湍流强度计算与分析

深入解读WT软件湍流强度计算与分析

weixin_46713695的博客 1025

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

grails安装部署_Intellij 2015+grails环境搭建

1、首先到intellij官网下载.......................................................................................................22、下载grails3:https://grails.org/...................................................

weixin_39860732的博客 122

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

GRAILS2入门 - 参考文档

作者:格雷姆罗彻,彼得Ledbrook,马克·帕尔默,杰夫·布朗,卢克 - 戴利,伯特·贝克威思   版本:2.2.3   目录   2.1安装要求 2.2下载和安装 2.3创建应用程序 2.4 Hello World示例 2.5使用互动模式 2.6设置IDE 2.7约定优于配置 2.8运行应用程序 2.9测试应用程序 2.10部署应用程序 2.11 Java EE

Grails&drupal 1388

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

grails环境搭建

grails环境搭建   1. 安装 下载grails 下载页面 http://www.grails.org/Download 文件grails-bin-1.0.3.zip  解开压缩得到grails-1.0.3文件夹 环境变量: GRAILS_HOME = D:/tool/grails-1.0.3 path中加入D:/tool/grails-1.0

jyjixf10的专栏 412

grails之殇

  网络盛传rails、grails的开发效率,我也就尝试着使用其开发,不过最终效率都没能有效的提升上去,原因不在乎于rails、grails本身,而在与自己。  我选择的是grails,毕竟本来就是java系的人,而在外网访问权限封闭的公司主机上安装ruby on rails非常困难。  grails提升开发效率的根本点在于:  约定甚于配置:原本项目中需要配置spring bean xml、hibernate orm xml,在grails中自动完成了,MVC、ORM的配置由框架约定替代。这是我认为敏捷

fishriver的专栏 1347

重拾Grails - 内部办公系统开发日记

[size=medium] 开发环境版本号 GRAILS_HOME=/workspace/javaspace/grails-2.2.0 TOMCAT_HOME=/workspace/javaspace/apache-tomcat-7.0.34 JAVA_HOME=/workspace/javaspace/jdk1.7.0_10 开发环境重装流程 1. 安装IDEA 2. 安装JD...

iteye_5925的博客 188

Grails on google App engine开始

辞掉工作在家歇息,反正闲着也是闲着,就准备在家写个应用部署到google的Appengine上,目的有两个:第一是学习学习动态语言grails,第二是熟悉熟悉google的产品(哈哈,微谷粉了),好了,闲话少絮,开始。 因为写这个的时候已经是Grails on google App engine的第五天了,目前可以在本地跑起来,功能实现少的可怜。记录下前几天的工作,以便以后查找。 ...

乘风归去 98

Fiberhome开发全过程

Technorati 标签: fiberhome,corba Fiberhome开发全过程   2007年4月6日 目录 1 内容简介.... 2 2 开发平台搭建.... 2 2.1 组件... 2 2.2 开发环境配置... 3 2.2.1 安装与部署Grails. 3 2.2.2 安装Eclipse的groovy插件... 3 3 第一个例子”hello world”.

百事乐 2497

Grails框架优劣势

原文地址:http://www.infoq.com/cn/articles/case-study-grails-partii grails的思想 1.Don't Repeat Yourself 不要重复你自己 2.Convention over Configuration 约束优于配置    DRY和约定优先于配置的思想,是由...

weixin_30385925的博客 240

sts 框架新建以及 网站部署

安装 grails (绿色安装 ) 1 、复制 grails-1.3.7 与 java jdk 放到目录 2 、配置环境变量 新建java_home 与 grails_home 然后在path 中加入;%java_home%/bin;;%grails_home%/bin (大写) 测试 开始cmd 输入 java javac grails 3、然后在springsource中 st...

dyy 546

javaer敏捷之路:使用grails 1.1.1有感

 Scott Davis写到:British Sky Broadcasting Group 最近将它的 Web 站点迁移到了 Grails。他们现在每月的点击量达到 1.1 亿次。LinkedIn.com 在其站点的某些商业部分使用 Grails。Tropicana Juice 在英国有一个 Web 站点,该站点几年来一直在 Grails 上运行。Grails.org 本身就是用

lcllcl987的专栏 2591

Grails3 应用程序部署

斗战圣佛91的博客 294
下一篇: Grails教程
sipsir
博客等级 码龄20年 57粉丝 144原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值