最近项目中需要,管理端使用grails框架,用户端使用servlet和mybatis。
流程:使用grails创建表,使用mybatis对表进行操作。
问题:grails使用hibernate进行库的操作,既可以使用自身的id增长策略也可以使用oracle的id增长策略,但是mybatis需要使用oracle的id策略,更新、删除、查询不受此影响
解决:在grails的domain中对表id进行设置:
static mapping = {
id generator: 'sequence',params: [sequence: 'seq_audit',start_with:1,nocache:true,increment_by:1];
}
运行grails程序,自动建表。
在mybatis中使用,INSERT INTO app_login_info(id,user_id) VALUES (seq_applogin.nextval,#{userId}')
关于使用oracle进行分页查询的备忘,本项目中mybatis使用xml,“<![CDATA[”用于sql的转义。
<select id="getGroupWithFunctionByRecord" parameterType="java.util.HashMap" resultType="com.itrus.pojo.GroupWithFunction">
<![CDATA[select * from (
select
gwf.group_id as groupId,
gwf.function_id as functionId,
rownum rn
from
group_with_function gwf,uts_group grp
where
gwf.group_id = grp.id
and grp.type != 'person'
and rownum <= #{pageSize}
order by grp.id
) where rn >= #{firstResult}]]>
</select>
此写法有助于提高查询性能。oracle在执行时会将rn >= #{firstResult}放入里面查询,用以提高查询效率。
写在这里仅作为备忘,也为需要的朋友一点参考。
分享到:
相关推荐
Grails-MyBatis 用于 Grails 框架的 MyBatis 插件 基于原始 Grails-iBatis 插件:Brian Sanders ( ) Grails 插件主页: : 修改: 命名约定的一些变化 添加了对多个数据源的完全支持 Grails 2.0 插件重构 最小 ...
标题"ds_test.rar_ds test_grails_oracle"暗示了这个压缩包可能包含了与Grails应用相关的配置和代码,特别是关于多数据库源访问的示例,其中涉及到MySQL和Oracle这两种不同的数据库系统。 描述中的"grails 多数据库...
《Grails企业Web应用开发与部署》 在现代软件开发领域,Grails作为一个基于Groovy语言的开源Web应用框架,以其高效、灵活和强大的特性深受开发者...在实际工作中,结合最佳实践,能够进一步提升开发效率和应用性能。
同时,由于Groovy运行在Java虚拟机(JVM)上,Grails应用可无缝集成Java平台,利用Java的成熟库和应用服务器,确保了系统的稳定性和扩展性。 Grails遵循经典的MVC设计模式,其组件包括: 1. **Domain Class**:...
1. **快速开发**:得益于Groovy的动态特性和“一栈式”设计,Grails能显著减少代码量,加速Web应用的开发过程。 2. **无缝集成Java生态系统**:Groovy与Java的高度兼容性,使得开发者可以轻松调用Java库,享受Java...
Grails以其高效、灵活和强大的特性,成为开发人员在Java平台上构建Web应用的热门选择。这份手册旨在帮助初学者快速上手,并为有经验的开发者提供深入的指导。 1. **简介** Grails是基于Groovy语言的开源Web应用...
- **动态性**:得益于Groovy语言的动态特性,Grails支持动态类型和脚本化编程,使得开发者能够快速编写代码并部署应用。 - **一站式解决方案**:Grails提供了一套完整的开发环境,包括构建工具、测试框架、数据库...
在描述中提到的“博文链接:https://java-007.iteye.com/blog/504568”,虽然没有提供具体内容,但我们可以推测这是一篇关于如何在Grails应用中配置和使用Oracle或PostgreSQL数据库的文章。在实际开发中,这样的集成...
Grails 采用了敏捷开发的思想,遵循“约定优于配置”(Convention Over Configuration)和“不要重复自己”(Don’t Repeat Yourself,DRY)的原则,减少了大量繁琐的配置和模板代码,提高了开发效率。Grails 集成了...
《构建Grails应用程序:从零开始》 在IT行业中,Grails是一个基于Groovy语言的开源Web应用框架,它利用了...通过深入研究每个部分,无论是初学者还是经验丰富的开发者,都能进一步提升对Grails框架的理解和应用能力。
"grails-core"是Grails框架的核心模块,包含了构建、运行和管理Grails应用程序所需的基本组件和服务。这个框架的主要目标是提高开发效率,通过简化开发流程和提供丰富的内置功能来实现快速的Web应用开发。 **Groovy...
通过阅读这份文档,开发者可以深入理解Grails 1.1的核心特性和开发流程,从而更好地利用Grails构建高效、健壮的Web应用。 总结来说,Grails 是一个强大的Web开发框架,借助Groovy的灵活性和Java生态的稳定性,为...
【标题】"使用 Grails 和 Flex 构建 Web 应用程序"的实践指南 在当前的Web开发领域,构建高效、动态且用户友好的应用程序是至关重要的。Grails 和 Flex 正是这样的两个框架,它们分别专注于后端和前端开发,能够...
Grails是一个基于Groovy语言的开源Web应用开发框架,它简化了Java平台上的开发过程,提供了丰富的功能和高效的开发体验。 在本书中,你将学习到: 1. **Grails简介**:了解Grails的基本概念,包括其设计理念、架构...
Groovy和Grails的结合使用为开发者提供了一个高效且功能强大的开发平台,尤其是在Java平台上进行Web应用开发时更是如此。希望本教程能够帮助初学者快速入门Groovy和Grails的使用,并为后续的深入学习打下坚实的基础...