ORMLite国外@DatabaseField与逆映射?

我正在实施一个小型项目,我在想,ORMLite是否支持@DatabaseMapping的逆映射。 我正在寻找的是类似于JPA / Hibernates的逆映射。 以下是假设的而且很愚蠢的例子,一张BlogPost

@DatabaseTable
public class BlogPost {
  @DatabaseField(foreign = true)
  private Author owner;
}

和相应的Author类,并不那么重要:

@DatabaseTable public class Author { }

这导致了下面的SQL(只是相关的部分):

CREATE TABLE blogpost ( ... , owner_id INTEGER NOT NULL, ... ) CREATE TABLE author ( ... )

看看表blogpost现在如何拥有作者的外键。 不过,我更喜欢这种方式,即作者应该有一个blogpost_id外键。 (我告诉过你这是一个愚蠢的例子......)。

通过逆映射,我可以利用级联进行删除,但是我还没有在ORMlite文档中找到任何关于此的信息。 这不是一个功能,还是我只是错过了一些东西?


我对这个问题有点困惑,但我想我会试着回答它。

我不明白这将如何工作@ilikeorangutans。 我认为一个作者有多个博客帖子? 那么账户频道上怎么会有一个blogpost_id ? 你可以有一个包含一个连接表author_idblogpost_id但只是增加了复杂性。

如果你看看这个讨论和这个网页,你可以看到Hibernate的逆映射是关于谁控制关系并负责更新行。 在这两种情况下, BlogPost都会有author_id而不是相反。

ORMLite确实支持“外部集合”的概念,您可以通过将BlogPost添加到Author对象中的集合来将其添加到数据库。 欲了解更多信息,请参阅外国收集文件。

对不起,如果我错过了什么。

链接地址: http://www.djcxy.com/p/68667.html

上一篇: ORMLite foreign @DatabaseField with inverse mapping?

下一篇: Help with Hibernate Collection Foreign Key Mapping