簡體   English   中英

大理 Java 持久化工具 - 數據庫數據類型到 Java 數據類型映射

[英]Dali Java Persistence Tools - Database datatype to Java datatype mapping

我正在使用 Dali Java 持久性工具為具有 300 多個數據庫表的現有數據庫創建實體。 如果我運行該工具,它會轉換

  • 數據庫 xml 類型為 java Object
  • 數據庫時間戳到 java 時間戳
  • 數據庫 integer 到 java 整數

等等。

當我將我的實體放入 Spring 項目時,很多這些數據類型映射(例如上面提到的 3 個)會導致服務器啟動錯誤,並且某些映射會導致 CRUD 操作期間失敗。

我有適合我的正確數據類型映射。

我可以看到 Dali 工具為我提供了為每個表設置數據類型映射的選項。

問題是我有超過 300 個表,並且這些相同的映射在所有這些表中重復。

I want to change the behavior of the tool to map database XML to java String, database integer to java Integer, database timestamp to java java.sql.Date etc.

我不想對這 300 個表中的每一個表進行 go 並在數據類型映射中進行相同的更改。

是否可以指定 Dali Java 持久性工具的行為以我想要的方式而不是它執行映射的方式執行映射,而無需訪問每個表並單獨更改它。

提前致謝。

我已經很多年沒有嘗試過了,但它可能仍然有效:

Dali(生成 JPA 實體的 Eclipse 的部分)使用 DTP(Eclipse 的另一部分)來確定特定的 Java 數據類型。 這些映射是特定於數據庫平台的,並在各種 DTP 插件的.xmi文件中指定。

For example, in Eclipse JEE 2021-03, for PostgreSQL, the data type ABSTIME is mapped to the Java type java.lang.Object in the file /runtime/vendors/postgresql/postgresql_8.x.xmi in the plug-in jar ./plugins/org.eclipse.datatools.enablement.postgresql.dbdefinition_1.2.101.201811012051.jar

根據您的數據庫平台和您安裝的其他插件,這些設置可能會有所不同。 您可以提取適當的.xmi 文件,對其進行編輯,然后將其返回到其 jar,這應該會改變實體的生成方式。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM