您好我正在使用Grails的DB逆向工程插件,并且在成功生成域名后尝试运行应用程序时出现错误
由HibernateException引起:列创建_timestamp的MQ.BENEFICIARY中的列类型错误。找到:timestamp,expected:raw(255)
域类将此字段设置为Serializable,如下所示
class Beneficiary implements Serializable {
String customernumber
String nickname
String benAccNo
String benType
String benStatus
String benAccType
String benAccCurr
String benName
String benAddress
String benCity
String benBankBic
String benBankName
String benBankBranch
String benBankAddress1
String benBankAddress2
String benBankAddress3
String benBankAddress4
String benBankCity
String benBankCountry
String benBankCountrycode
String clientchannel
String creationRefno
Serializable creationTimestamp
String activationRefno
Serializable activationTimestamp
String activationCode
我使用以下版本的Hibernate和dbreverse pluging
运行时“:hibernate:3.6.10.14”
compile':db-reverse-engineer:0.5.1'
问题是如何告诉hibernate或逆向工程插件使用正确的类型
答案 0 :(得分:0)
这是生成的代码,不应该像任何生成的代码一样受信任。您应始终检查生成的代码并确保其正确无误,以便在您的应用程序中使用并修复或删除它(如果不是。)
该插件不保证100%的正确性,只是它可以为您从数据库表中手动创建域类节省大量时间。一般情况下,您不会经常运行逆向工程脚本,通常只需要执行一次或几次就可以为预先存在的数据库创建域类,但之后您可以像在任何应用程序中一样自行管理事物。 / p>
我不确定为什么会这样做;如果您显示错误创建的字段的列定义,将会有所帮助。但您可以轻松地将Serializable
替换为Date
。