小编tho*_*omj的帖子

让Oracle触发ID而不是Hibernate的序列?

我有一个具有Oracle数据库的应用程序,其中每个表都有一个触发器,该触发器调用序列以获取该行的下一个ID.如何配置我的域,以便Hibernate不指定插入的下一个ID,只让Oracle和触发器处理它?

以前我有我的域设置使用序列生成器,这似乎工作.我不能在我们的生产系统上使用它,因为DBA不允许我为Grails的序列授予select权限.这显然打破了Hibernate的生成器.

grails hibernate

1
推荐指数
1
解决办法
2327
查看次数

使用SQL和dataSource测试服务

我有一个服务,使用Groovy SQL对数据库进行一些SQL调用.我对此服务的测试失败,因为dataSource为null.如何让dataSource成为单元测试中的适当连接?

ExampleService.groovy

class ExampleService { 
    def dataSource 

    def getSQL() { 
        def sql = new Sql(dataSource) 
        def query = "some query" 
        sql.call(query) 
        sql.close() 
    } 
} 
Run Code Online (Sandbox Code Playgroud)

ExampleServiceTests.groovy

@TestFor(ExampleService) 
class ExampleServiceTests { 
    void testExample() { 
        def es = new ExampleService() 
        es.getSQL() 
    } 
} 
Run Code Online (Sandbox Code Playgroud)

在上面的例子中,我收到以下错误:

java.lang.NullPointerException: Must specify a non-null Connection
Run Code Online (Sandbox Code Playgroud)

grails

0
推荐指数
1
解决办法
1402
查看次数

标签 统计

grails ×2

hibernate ×1