我正在使用Dali持久性工具为现有数据库创建实体,该数据库有超过300个数据库表。如果我运行这个工具,它就会转换
数据库xml类型到java Object
诸若此类。
当我将实体放在Spring项目中时,许多这些数据类型映射(例如上面提到的3个)会导致服务器启动中的错误,而一些映射会在CRUD操作期间导致失败。
我有正确的数据类型映射正在为我工作。
我可以看到Dali工具给了我一个选项来设置每个表的数据类型映射。
问题是,我有超过300个表,这些映射在所有这些表中重复。
我希望将工具的行为更改为将数据库XML映射为java字符串,将数据库整数映射为java,将数据库时间戳更改为java java.sql.Date等。
我不想查看这300个表中的每个表,并对数据类型映射进行相同的更改。
是否可以指定Dali Java持久化工具的行为来以我想要的方式来执行映射,而不是它执行映射的方式,而不需要对每个表进行单独的更改。
提前谢谢。
发布于 2021-05-04 02:49:16
我已经好几年没试过了,但它可能还能用:
Dali ( Eclipse中生成JPA实体的部分)使用DTP (Eclipse的另一部分)来确定特定数据类型的Java属性类型。这些映射是特定于数据库平台的,并在各种DTP插件中的.xmi文件中指定.
例如,在EclipseJEE2021-03中,对于PostgreSQL,数据类型ABSTIME映射到插件jar ./plugins/org.eclipse.datatools.enablement.postgresql.dbdefinition_1.2.101.201811012051.jar中文件/runtime/vendors/postgresql/postgresql_8.x.xmi中的java.lang.Object类型。
根据您的数据库平台和您安装的其他插件,这些设置可能有所不同。您可以提取适当的.xmi文件,编辑它,并将其返回到jar,这将改变实体的生成方式。
https://stackoverflow.com/questions/67318528
复制相似问题