Grails 1.1 环境 - 数据源

Grails是基于Java技术构建的,因此要在其中安装数据源必然需要一些JDBC(这种技术并不只支持Java数据库连接)的知识。

根本上来说,如果你正在使用的另一种数据库,而不是Grails内嵌的HSQLDB,那么你就需要为它准备一个JDBC驱动。

例如使用MySQL数据库,就需要 Connector/J这个JDBC驱动。

通常这些JDBC驱动都是以JAR文件格式发行的。

将需要的JAR文件放到项目的 lib 目录下即可。

一旦你把JAR文件放到了正确的位置,你还需要熟悉位于 grailsapp/conf/DataSource.groovy 的Grails数据库描述文件。

这个文件包含了数据源的定义,其中有下列这些设置:

• driverClassName - JDBC驱动的类名

• username - 获得JDBC连接需要使用的用户名

• password - 获得JDBC连接需要使用的密码

• url - 数据库的JDBC URL

• dbCreate - 是否从domain模型自动生成数据库

• pooled - 是否使用连接池(默认为true)

• logSql - 是否启动SQL日志记录

• dialect - 用于表示与数据库通讯时应该使用的Hibernate方言的字符串或类。查看org.hibernate.dialect 一文以便获得可用的方言。

一个用于MySQL数据库的典型配置可以像这样:dataSource { pooled = true dbCreate = "update" url = "jdbc:mysql://localhost/yourDB" driverClassName = "com.mysql.jdbc.Driver" username = "yourUser" password = "yourPassword" }在配置数据源的时候不要在配置项之前包含类型声明或def关键字,否则Groovy会把它们当作本地变量定义并且不对它们进行处理。

例如下边的例子就是无效的:dataSource { boolean pooled = true // 类型声明导致它被当作是一个本地变量 … }