将休眠映射注释翻译成 hbm.xml 文件

Translate hibernate mapping anotations to hbm.xml file

我有这样的休眠映射注释,我需要将它翻译成xml一个。

@Entity
@Table(name = "nodes")
public class DefaultDiagramNode {

   .....

   @OneToMany(cascade = CascadeType.ALL, fetch = FetchType.EAGER, orphanRemoval = true)
   @JoinColumn(name = "node_id", referencedColumnName = "id")
   private Set<NodeProperty> properties;
}

这是我的 sql table 结构:

CREATE TABLE nodes (
  id           VARCHAR(255) NOT NULL,
  logical_id   VARCHAR(255) NOT NULL,
  graphical_id VARCHAR(50)  NOT NULL,
  type         VARCHAR(50)  NOT NULL,
  diagram_id   BIGINT,
  PRIMARY KEY (id),
  FOREIGN KEY (diagram_id) REFERENCES diagrams (diagram_id)
);    


CREATE TABLE node_properties (
  property_id VARCHAR(255) NOT NULL,
  name        VARCHAR(50)  NOT NULL,
  value       VARCHAR(255) NOT NULL,
  type        VARCHAR(50)  NOT NULL,
  node_id     VARCHAR(255),
  PRIMARY KEY (property_id),
  FOREIGN KEY (node_id) REFERENCES nodes (id)
);

我该怎么做?

注释确实是新应用程序的更好选择。它们更易于阅读,消除了 POJO 和 XML 之间的钝化关系,并且它们更少将导致以后要维护的代码行更少。注释还可以使使用 Eclipse 或 IntelliJ 等 IDE 重构应用程序变得更加容易。

是否迫切需要回到XML?否则,我会避免它。


编辑:

啊,有道理,因为您使用的是 Thrift。您是否尝试过查看 Swift?您可以将这些注释添加到您的 Hibernate 实体 类。 https://github.com/facebook/swift/