2011-10-31 51 views
1

我想知道如何将数据保存到hsqldb。例如,我试图将一个简单的名称保存到数据库中,但我似乎无法弄清楚如何保存它。Grails和hsqldb

回答

5

推荐的方法是创建一个带有String名称属性的域类。然后你可以保存它,你就完成了。首先,创建域类:

$ grails create-domain-class com.foo.Person 

然后编辑在grails-app /域/ COM /富/ Person.groovy:

package com.foo 

class Person { 
    String name 
} 

在控制器的动作或服务的方法,你可以创建,保存,并检索数据:

def heMan = new Person(name: 'He Man') 
if (!heMan.save()) { 
    // Handle problems saving (e.g. constraint violations) 
} 

def h = Person.findByName('He Man') 
println h.name 

另一种方法是直接使用JDBC。你可以让dataSource bean自动注入你的控制器,然后使用groovy.sql.Sql类来查询这个dataSource。 Check out this stackoverflow.com question

+0

非常感谢。另外我还有一个问题,比如说我想将一个字段中的数据保存到hsql数据库中的相应位置。你有什么建议我应该如何尝试? –

2

两种方式:

  • GORM
  • 原始JDBC(通过Spring的JdbcTemplate
+3

没有那么难,只要你在使用Grails模型,很简单,不是? –

+0

好吧,对我和你来说都是微不足道的,但对初学者来说可能不是这样。相比之下,我认为它比JDBC更“难”,因为它增加了ORM概念,但您可能不熟悉它。 – Bozho

+2

但是,为什么还要用grails呢? –