首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計疑難解答

Hibernate SchemaExport 新版 API 使用示例

     編輯:程式設計疑難解答

舊版代碼

Configuration cfg = new Configuration().configure();
SchemaExport se = new SchemaExport(cfg);
se.create(true, true);

新版(Hibernate 5.2+)API

StandardServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder()
    .configure() // 默認讀取 hibernate.cfg.xml
    .build();

MetadataImplementor metadata = (MetadataImplementor) new MetadataSources(serviceRegistry)
    .buildMetadata();

new SchemaExport()
    .create(EnumSet.of(TargetType.DATABASE), metadata);

關鍵變化

  • 配置構建分離為 ServiceRegistry + Metadata。
  • SchemaExport.create 參數改為 EnumSet<TargetType>(DATABASE、SCRIPT、STDOUT)和 Metadata。
  • 支持更細粒度控制(如僅導出腳本 TargetType.SCRIPT)。

常見用法

// 僅生成 DDL 腳本到文件
new SchemaExport()
    .setOutputFile("schema.sql")
    .create(EnumSet.of(TargetType.SCRIPT), metadata);
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved