如果 GORM (Grails
Object Relational Mapping)没有你想象的那么足够灵活,作为选择,你可以使用Hibernate映射你的domain类.
要做到这点,需要在你项目的grails-app/conf/hibernate
目录创建一个hibernate.cfg.xml
文件并为你的domain类对应HBM映射文件
.
更多关于这方面的信息,请查看Hibernate站点的文件映射
这允许你映射Grails domain类适用于更广的遗留系统并更加灵活的创建数据库模式 .
Grails也允许你在Java中编写domain类或重用以存在的domain
model,这些都通过使用Hibernate来映射 . 你需要做的是放置必须的hibernate.cfg.xml
文件和对应的映射文件在grails-app/conf/hibernate
目录中 .
另外,令人兴奋的是你仍然可以调用GORM中所有动态之久和查询方法
!
Grails 也支持通过Hibernate的Java 5.0注解支持来创建domain类映射.
为了做到这点,你需要通过设置DataSource
中的configClass
属性告诉Grails你要使用注解配置,如下 :
import org.codehaus.groovy.grails.orm.hibernate.cfg.GrailsAnnotationConfiguration
dataSource {
configClass = GrailsAnnotationConfiguration.class
… // remaining properties
}
这就是它的配置!确保你安装了Java 5.0,因为这需要使用注解.
现在,为了创建一个注解类,我们在src/java
中简单的创建一个新的Java类并使用EJB 3.0规范来定义注解(详情参考Hibernate Annotations
Docs):
package com.books;
@Entity
public class Book {
private Long id;
private String title;
private String description;
private Date date; @Id
@GeneratedValue
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
}
一旦完成,你需要使用Hibernate sessionFactory
注册这个类
,为了做到这点,你需要添加 如下的grails-app/conf/hibernate/hibernate.cfg.xml
文件:
<!DOCTYPE hibernate-configuration SYSTEM
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<mapping package="com.books" />
<mapping class="com.books.Book" />
</session-factory>
</hibernate-configuration>
当Grails加载时,会注册这个类必要的动态方法 . 查看Scaffolding了解 Hibernate domain
类中可以做的其他事情.
Grails提交者, Jason
Rudolph,花了许多时间写了许多关于通过自定义Hibernate使用Grails:
分享到:
相关推荐
同时,也会讨论HQL(Hibernate Query Language)和GSP(Grails Simple Page)标签库。 6. **服务层与事务管理**:探讨服务层的作用,如何创建服务类,以及在服务中进行事务处理。还会讲解Grails的自动事务管理机制...
这个版本,1.3.9,是在Grails框架历史中的一个重要里程碑,它集成了Groovy编程语言,Spring框架,Hibernate持久化库,以及其他标准的Java技术,为开发者提供了一站式的解决方案,简化了复杂的应用程序开发过程。...
compile("org.grails.plugins:hibernate-search:2.3.0") compile("org.grails.plugins:hibernate5:6.1.8") compile("org.grails.plugins:cache") compile("org.hibernate:hibernate-core:5.2.10.Final") compile(...
4. 插件:Grails社区提供了大量的插件,如Spring Security、Hibernate、Caching等,这些插件可以快速增强应用功能。 四、Grails部署 1. 环境准备:确保目标服务器已安装JDK和相应的运行环境,如Tomcat或Jetty。 2. ...
GORM是Grails的持久化框架,它实现了Hibernate和ActiveRecord的功能,使得与数据库的交互变得简单。通过定义领域类,你可以轻松地完成CRUD(创建、读取、更新、删除)操作。 五、Grails插件系统 Grails的插件系统...
- **集成 Hibernate**:Grails 内置对 Hibernate 的支持,简化了数据库操作。 - **脚手架支持**:提供了一套快速原型开发工具,可以自动生成基本的应用程序结构。 - **插件系统**:拥有丰富的插件生态系统,可以通过...
Grails是一个基于Groovy语言的全栈框架,它遵循约定优于配置的原则,并且紧密集成Spring和Hibernate等流行的Java库,简化了开发流程。Grails在IT行业中尤其受到重视,因为它能够帮助开发者快速搭建并部署基于MVC模式...
#### 二、Grails环境搭建与基本应用 - **环境要求**: - **JDK5**及以上版本。 - **Grails1.0.4**版本。 - 支持的数据库(如MySQL、PostgreSQL等)。 - **开发工具**: - IntelliJ IDEA 8.1用于开发Grails应用,...
Grails集成了许多先进的开源项目和技术,如Spring、Hibernate等,这使得开发者可以更加专注于业务逻辑而不是框架本身。 #### 二、环境配置 **1. 安装Java** Groovy和Grails都是基于Java平台的,因此首先需要安装...
Groovy 是一种面向对象的、动态的编程语言,与 Java 兼容,可运行在 JVM 上。Groovy 的语法简洁,支持闭包和 DSL(领域特定语言),使得代码更易读、易写,提高了开发者的生产力。 **MVC 架构** 在 Grails 中,MVC...
Grails 的强大之处在于其丰富的插件库,如Spring Security用于安全控制,Hibernate Search提供全文搜索功能,以及各种用于支付、邮件发送、社交网络集成的插件,极大地扩展了框架的功能。 6. **IDE集成** ...
1. **Domain Class**:表示数据模型,通常与数据库表相对应,Grails利用Hibernate进行对象关系映射。 2. **View (GSP)**:采用GSP(Groovy Server Pages)而非传统的JSP,允许嵌入Groovy代码,用于渲染用户界面。 3....
Grails的独特之处在于它能够吸收其他流行框架的优点,比如Spring的依赖注入、Hibernate的对象关系映射能力、Quartz的强大调度功能以及SiteMesh的布局管理,而这一切都可以在Grails的简单约定和简洁语法下实现。...
- **与Hibernate集成**:通过Hibernate进行数据库操作,实现数据持久化。 - **与其他Java库的兼容性**:由于Groovy运行在JVM上,因此可以方便地调用任何Java库。 #### 八、学习Grails的先决条件 - **HTML与CSS**:...
Grails集成了许多流行的开源库,如Hibernate(ORM),Spring(依赖注入),以及Freemarker或GSP(视图层模板引擎)。这使得Grails在开发过程中能够减少许多重复工作,让开发者更多地关注业务逻辑。 2. **Groovy语言...
3. **Domain Classes**:Grails的领域模型类,基于Groovy,具有自动持久化的能力,通过`GORM(Grails Object Relational Mapping)`与数据库交互。 4. **Controllers**:控制层负责处理HTTP请求,调用业务逻辑,并...
1. **Domain Class**:对应模型,类似于数据库中的表,通过Hibernate自动映射,简化了数据访问层的代码。 2. **View**:Grails使用GSP(Groovy Server Pages)作为视图,类似于JSP,但更灵活,允许在页面中直接嵌入...
综上所述,Grails 2.4.2作为一款成熟的Web开发框架,结合了Groovy的灵活性、Spring的稳定性以及Hibernate的数据管理能力,为开发者提供了一站式的解决方案,使得构建现代Web应用变得更加便捷和高效。其丰富的功能和...