`
agile_boy
  • 浏览: 556847 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

grails调用存储过程

阅读更多
  在特殊情况下,grails应用需要调用数据库的存储过程,这在grails的官方文档里边好像没有提到过,在james的blog里介绍如何解决这个问题。
    代码转贴如下
java 代码
 
  1. class MainController {  
  2.   
  3.   def dataSource // using the datasource we define in the spring's resources.xml  
  4.   
  5.   def index = {  
  6.       Sql sql = new Sql(dataSource)  
  7.       def row = sql.execute("call create_daily_hours(${new Date()+1})")  
  8.   }  
  9. }  
  需要说明的一些是:grails本身没有提供访问存储过程的便捷方法,而groovy的GSQL提供了,因此grails可以直接拿过来用了,当然也可以用spring的JdbcTemplate。
  希望对grails用户有点用。

  2006-06-06 update:
 对Oracle等支持out/inout类型的stored procedure处理,示例代码如下:
java 代码
 
  1. Sql sql = new Sql(dataSource)  
  2.             sql.call("call test(?,?)",["111",Sql.VARCHAR]) {  
  3.                 println it+"call"  
  4.             }  
  test存储过程第二参数是out类型的变量,对这样out类型处理就是利用sql.call的cloure,如上例所示,另外对inout类型需要用
Sql.inout(Sql.VARCHAR(foo))处理
分享到:
评论
3 楼 山风小子 2007-06-04  
agile_boy,你多虑了
2 楼 agile_boy 2007-06-04  
呵呵,我还没有自己写代码验证过,不过理论上是没有问题的,在controller里边可以直接引用dataSource及其他的spring服务,而且grails是基于groovy的,GSQL那样用法应该问题也不大
1 楼 山风小子 2007-06-04  
很有用,转载一下,以备後用

相关推荐

    Grails探索之访问存储过程及其事务控制

    在这个例子中,使用`sql.call`方法来调用存储过程,第一个参数是存储过程的名称加上输入参数的占位符,第二个参数是一个包含实际参数值的列表。 **4. 获取存储过程的返回值** 接下来考虑一个带有返回值的存储过程...

    grails项目配置

    Grails是一个基于Java平台的开源Web应用框架,它采用Groovy语言,提供了MVC(Model-View-Controller)架构模式,简化了开发过程。本项目是一个关于Grails的演示示例,特别关注了数据模型的一对多和多对多关系的配置...

    Grails入门指南 -- 针对grails1.0.4更新

    - **与Java的兼容性**:可以在Groovy代码中直接调用Java类,反之亦然。 - **强大的生态系统**:基于Hibernate(ORM)、Spring框架(MVC、依赖注入)和SiteMesh(界面布局管理)等成熟技术构建。 - **目标用户**: ...

    grails app

    本压缩包文件“grails app”包含了一步步搭建Grails应用的源代码,虽然缺失了图片说明,但通过解析代码,我们可以深入理解Grails应用的构建过程。 1. **Grails框架介绍** Grails是基于MVC(Model-View-Controller...

    第一个grails程序

    3. **grails-app/controllers**:控制器文件夹,包含处理HTTP请求的类,负责视图的渲染和业务逻辑的调用。 4. **grails-app/domain**:领域模型文件夹,定义了应用的数据模型和持久化逻辑,通常对应数据库中的表。 5...

    grails 中文第二版

    - 提供了Maven集成,使得Grails项目可以轻松发布到Maven存储库。 - 支持将Grails项目部署到Maven存储库。 - 支持插件依赖,允许在项目之间共享代码。 #### 四、命令行 **交互模式** - Grails提供了交互式命令行...

    Grails 和 jQuery开发实例

    在开发Web Calendar程序时,我们需要创建一个模型类来存储日期、事件等信息,控制器处理HTTP请求并调用模型方法,最后由视图展示结果。 接着,jQuery将为我们的日历界面添加动态交互性。例如,我们可以利用它的`$....

    grails 文档

    - Controller:控制器,处理用户请求,调用服务层方法,填充模型并决定视图。 3. **Grails CLI 工具** Grails 提供命令行工具,用于项目初始化、构建、运行、测试等操作。例如,`grails create-app` 创建新项目,...

    grails导出csv

    Grails是一个基于Groovy语言的开源Web应用框架,它简化了Java平台上的开发过程。Grails提供了一种快速开发模型,支持MVC架构,拥有丰富的插件系统,使得处理CSV这样的任务变得简单。 三、Grails导出CSV的步骤 1. **...

    grails-plugin-converters-2.3.1.zip

    将Grails Plugin Converters 2.3.1与Box Java SDK v2 结合,开发者可以在Grails应用中直接处理Box上的文件数据,比如,从Box下载文件并将其转换成特定格式,或者接收用户上传的经过转换的数据并存储到Box账户中。...

    Grails基础教程

    - **通过测试储存和获得用户**:介绍了如何使用测试来验证领域类的存储和检索功能。 - **用户参数的更新**:演示了如何更新领域类的属性值。 - **删除用户**:讲解了如何删除领域类的实例。 **5.3 验证:阻止危险进...

    Grails 中文参考手册

    Grails 是一个基于 Groovy 语言的开源Web应用程序框架,它构建在Java平台之上,旨在简化开发过程并提高生产力。Grails 的设计深受Ruby on Rails的影响,提供了MVC(模型-视图-控制器)架构模式,使得开发人员能够...

    Grails完全入门.pdf

    Grails是一个基于Groovy语言的开源Web应用框架,其设计目标是简化Java Web应用的开发过程,提供更为直观和简洁的编程体验。它结合了Groovy的动态性、Spring的依赖注入以及Hibernate的对象关系映射(ORM)技术,使得...

    grails使用手册

    Grails的设计理念是遵循“约定优于配置”,这使得开发过程更为快速且易于理解。 在Grails中,开发人员可以利用其内置的MVC(模型-视图-控制器)架构模式,简化应用程序的构建。MVC模式将应用逻辑分为三个主要部分:...

    yeoman-frontend:Yeoman-Frontend是一个Grails插件,用于管理和处理与Yeoman开发的前端。 该插件在Grails后端应用程序的开发过程中将前端(保留Yeoman的目录结构)与Grails Web容器集成在一起; 在Grails应用程序的部署过程中,它将前端组装到Web应用程序存档(WAR)文件中

    必须调用事件eventConfigureTomcat才能在Grails开发模式下运行插件。 文献资料 最新版本:2015年7月4日 0.3-使该插件可与Grails 2.5.0一起使用 0.2-版本0.1已使用无效的POM文件发布到Grails存储库; 参见

    grails脚手架2次优化

    Grails是一款基于Groovy语言的开源Web应用框架,它借鉴了Ruby on Rails的设计理念,提供了丰富的自动化工具和插件系统,使得开发过程更为高效。其中,脚手架(Scaffolding)是Grails的一大特色功能,它能自动生成...

    Grails-with-AngularJs:Grails 和 Angularjs

    Grails的核心理念是“代码即配置”,这使得开发过程更为高效,减少了大量手动配置的工作。同时,Grails支持RESTful服务,便于构建API,为前端提供了便捷的数据交互接口。 AngularJS则是Google维护的一个前端框架,...

    grails-burning-image:Grails 的刻录图像插件 - http

    使用“grails-burning-image”,开发者可以在后端动态生成这样的图片,将商品信息直接“刻录”到图片上,避免了因频繁更新图片而导致的存储和加载问题。 五、集成与配置 在Grails项目中集成“grails-burning-image...

    image-manager:Grails 图像管理器插件

    "image-manager"插件便是这样一个专门为Grails设计的图像管理解决方案,它使得在Grails应用中集成图片上传、存储、展示和管理变得轻而易举。 **一、Grails框架简介** Grails是一款基于Groovy语言的全栈式Web开发...

    GORM_ADO数据库操作模块.rar

    6. **存储过程调用**:对于需要使用存储过程的场景,GORM_ADO提供了方便的方法,通过`Command`对象执行存储过程,并获取结果。 7. **数据缓存**:为了提高性能,GORM_ADO模块还可以实现数据缓存,将经常访问的数据...

Global site tag (gtag.js) - Google Analytics