Java Hibernate 5序列,切换到Sql Server 2008方言中的标识
我最近从Hibernate3.6.4切换到Hibernate5.0.0。 我有一个ID注释如下的实体:Java Hibernate 5序列,切换到Sql Server 2008方言中的标识,java,oracle,hibernate,sql-server-2008,hibernate-5.x,Java,Oracle,Hibernate,Sql Server 2008,Hibernate 5.x,我最近从Hibernate3.6.4切换到Hibernate5.0.0。 我有一个ID注释如下的实体: @Id @GeneratedValue(generator="SEQ_MENUITEM") @SequenceGenerator(name="SEQ_MENUITEM",sequenceName="SEQ_MENUITEM", allocationSize=1) @Column(name = "ID_MENUITEM") private int id; hibernate配置可以是: <
@Id
@GeneratedValue(generator="SEQ_MENUITEM")
@SequenceGenerator(name="SEQ_MENUITEM",sequenceName="SEQ_MENUITEM", allocationSize=1)
@Column(name = "ID_MENUITEM")
private int id;
hibernate配置可以是:
<property name="hibernate.dialect">org.hibernate.dialect.Oracle10gDialect</property>
org.hibernate.dialent.oracle10galent
或
org.hibernate.dialogue.sqlserver2008dialogue
基于生产环境,软件必须在Oracle或Sql Server 2008中可移植
使用Hibernate 3.6.4,当指定SQLServer2008方言时,它会自动从序列切换到标识(自动增量),因此工作正常
使用Hibernate 5时,我出现以下错误:
com.microsoft.sqlserver.jdbc.SQLServerException:对象名称无效
“SEQ_MENUITEM”
他在寻找序列,而不是转换到身份。
我的开发环境是Sql Server 2014(支持序列),但我的方言仍然是2008,生产环境将是2008
有什么想法吗?是否从3.6.4更改为5?我找不到任何信息或任何进一步的xml配置(当然,在从oracle切换到sql server时,不更改所有实体中的所有注释)
谢谢。有人找到了解决方案吗?我面临着同样的问题解决方案对我有效
<property name="hibernate.dialect">org.hibernate.dialect.SQLServer2008Dialect</property>