Hibernate无法从数据库中获取SequenceInformation

Hibernate无法从数据库中获取SequenceInformation,第1张

Hibernate无法从数据库中获取SequenceInformation

最后,我提出了以下解决方案:

  1. 创建一个扩展了以下内容的序列信息提取器
    SequenceInformationExtractorOracleDatabaseImpl
    public class AppSequenceInformationExtractor extends SequenceInformationExtractorOracleDatabaseImpl     {              public static final AppSequenceInformationExtractor INSTANCE = new AppSequenceInformationExtractor();       @Override       protected Long resultSetMinValue(ResultSet resultSet) throws SQLException {          return resultSet.getBigDecimal("min_value").longValue();       }    }
  1. 创建一个扩展了的休眠方言
    Oracle12cDialect
    public class AppOracleDialect extends Oracle12cDialect    {       @Override       public SequenceInformationExtractor getSequenceInformationExtractor() {          return AppSequenceInformationExtractor.INSTANCE;       }       @Override       public String getQuerySequencesString() {          return "select * from user_sequences";       }    }
  1. 然后在

    persistence.xml
    :中使用此方言:

至于方法的

getQuerySequencesString()
替代和用法
USER_SEQUENCES
而不是
ALL_SEQUENCES
值得商(的(请参阅HHH-13322和HHH-14022)。但是,就我而言,
USER_SEQUENCES
用法更可取。



欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5586592.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-12-15
下一篇2022-12-14

发表评论

登录后才能评论

评论列表(0条)

    保存