grails的命名策略和数据库连接

grails直接使用hibernate的ImprovedNamingStrategy,虽然说是个不错的选择,不过有时候我们的工作不会象框架设计者想的那么简单.作为一个ORM,提供可配置命名策略是必要的.不过在grails中,如果你不想修改grails源代码那么就只能使用hibernate的默认命名策略.这是一个非常糟糕的设计...因为在GrailsDomainBinder这个类中是这样定义命名策略的:private static final NamingStrategy namingStrategy = ImprovedNamingStrategy.INSTANCE;很郁闷的使用了硬编码,而不是象DataSource那样直接写到groovy文件中进行配置.
下面这段代码是从ApplicationDataSource.groovy中摘出来的,分别是mysql和sqlserver的连接方法

//for mysql
//设置数据库为utf-8,选择第二项
//charsetfilter为utf-8,groovy文件为ansi
//用非jdbc客户端连的时候需要先设置:SET NAMES 'gbk'
//相当于:SET character_set_client='utf8'
//SET character_set_connection='utf8'
//SET character_set_results='utf8'

boolean pooling = true
String dbCreate = "create-drop" // one of 'create', 'create-drop','update'
//String url = "jdbc:mysql://localhost/test"
String url = "jdbc:mysql://localhost/test?useUnicode=true&characterEncoding=utf-8"
String driverClassName = "com.mysql.jdbc.Driver"
String username = "test"
String password = "test"

def dialect = MySQLDialect.class
/*
//for sql server
//设置sqlserver为简体中文
boolean pooling = true
String dbCreate = "create-drop" // one of 'create', 'create-drop','update'
String url = "jdbc:microsoft:sqlserver://127.0.0.1:1433"
String driverClassName = "com.microsoft.jdbc.sqlserver.SQLServerDriver"
String username = "test"
String password = "test"
def dialect = SQLServerDialect.class
*/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值