Der*_*rek 3 java sql-server db2 spring hibernate
我有一个使用Hibernate的Spring项目有两个数据源(db2和sql-server).
我一添加
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "SOME_SEQ")
到我的实体类中的列字段,我BeanCreationException在创建sql-server时得到一个,EntityManagerFactory因为org.hibernate.dialect.SQLServerDialect它不支持序列.但是,这个实体被使用的唯一地方是DAO,它使用的EntityManagerFactory是使用适当方言的db2 .
我错过了什么?
试试GenerationType=AUTO而不是GenerationType=SEQUENCE.
@GeneratedValue(strategy = GenerationType.AUTO, generator = "SOME_SEQ")
Run Code Online (Sandbox Code Playgroud)
使用AUTO hibernate使用最佳拟合生成策略,即一些数据库的序列和其他数据库的自动增量.
(注意:我从不使用注释,但我使用的是映射文件.<generator class="native">适用于不同的数据库类型.GenerationType=AUTO对于注释应该是相同的.)