java - 用于将简单 java.util.Map 持久保存到表的 Hibernate 动态映射模式替代方案?

标签 java hibernate

对于我的应用程序,我不希望任何 ORM 工具抓取我的域对象并尝试推断表/列结构。相反,我有一个简单的键/值对 HashMap,我想将其转换为数据库表中的行,并且希望将数据库查询结果作为映射列表返回。

我一直在使用 hibernate 的动态映射模式,指定实体名称映射而不是类映射。在大多数情况下,它是有效的,但 hibernate 似乎相当重,特别是当涉及到嵌套映射和列表时。

我已经考虑过编写自定义 tupilizers 或类型,但它们似乎也有点重。

任何其他流行的 ORM/持久性库是否支持类似于 hibernate 动态映射的功能?我稍微研究了一下 DataNucleus 和 iBatis,但似乎找不到 HashMap 类型模式。

最佳答案

如果您不使用映射功能,为什么还要使用 hibernate?

为什么不直接使用 spring 的 JDBC 功能(甚至直接使用 jdbc)并编写一个 RowMapper 将任何行转换为 HashMap?这可以使用 ResultSetMetaData 轻松完成。

关于java - 用于将简单 java.util.Map 持久保存到表的 Hibernate 动态映射模式替代方案?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11354654/

相关文章:

java - "Linking"Java 中的 JComponent?

java - 自引导 Ant 构建时出错

java - 使用 JPA 1.0 的 CriteriaQuery

java - Spring - 使用嵌套实体发布 JSON 主体不起作用

java - 在 Hibernate 中使用 native SQL 查询将结果集放入 DTO

java - hybris 促销优惠券不适用于总价

java - java中有没有类似于StringBuilder的类,唯一的区别就是它的长度是固定的?

java - 没有 JDBC 类型 : 1111 的方言映射

java - 在 Oracle View 中为 Hibernate 插入设置固定值

java - 使用 TextView 获取空指针