0

我正在使用 MyEclipse 对 Oracle 数据库中的视图进行休眠反向工程。

编辑:视图有六列,所有 varchar 类型,没有唯一键。另外,我无法控制视图。

它生成三个类:

  • 经纪人
  • BrokerID <--- 为什么?
  • 经纪人道

一切正常,就其本身而言。但是为什么它会创建一个 ID 类呢?我想对 Broker 类使用 JSON 序列化程序来获取数据并在 AJAX 调用中将其发送回浏览器。

现在,当我对 Broker 进行序列化时,我得到:

[{
   id: {
     field1: "",
     field2: ""
   }
}, {
   id: {
     field1: "",
     field2: ""
   }
}, {
   id: {
     field1: "",
     field2: ""
   }
}]

而不是我真正想要的是:

[{
  field1: "",
  field2: ""
}, {
  field1: "",
  field2: ""
}, {
  field1: "",
  field2: ""
}]
4

2 回答 2

1

每个 Hibernate 对象都需要某种标识符。

如果您不希望此生成的属性包含在 JSON 输出中,只需过滤掉该字段即可。根据所使用的 JSON 库,您可以使用@JsonIgnore或类似的方式对字段进行注释 - 请参阅该库的文档。

于 2011-04-06T15:52:30.597 回答
0

您必须进入您的 Db,并将一个字段设置为 PRIMARY KEY。

之后,hybernate 逆向工程就不再创建 CLASS_ID.java 了!

于 2015-11-06T10:14:02.073 回答