0

实体 A:人员,实体 B:付款(列:有效日期、从人员、到人员)。Person 应该与 fromPerson 和 to Person 是一对多的,这样我就可以跟踪付款人和收款人。

这就是我在 jdl 文件中定义它们的方式,它不能按预期工作。

entity Person {
  firstName String maxlength(100)
  lastName String maxlength(100)
}
entity Payment{
  effectiveDate Instant
  paymentRefNumber String
  amount Double
}

relationship OneToMany {
  Person to Payment{fromParty}
  Person to Payment{toParty}
}

当我使用这个 jdl 文件生成代码时,我在人 pojos 中遇到错误,其中关系被定义了两次,当我纠正它们时,应用程序启动时间太长了大约 30 分钟

知道我哪里出错了吗?

我的jdl文件配置:

application {
  config {
    databaseType sql
    devDatabaseType postgresql
    enableHibernateCache true
    enableSwaggerCodegen false
    enableTranslation true
    jhiPrefix sys
    languages [en, bn, hi, mr, ta, te]
    nativeLanguage en
    packageName com.eezibizi
    prodDatabaseType postgresql
    serviceDiscoveryType false
    skipClient false
    skipServer false
    testFrameworks [gatling, cucumber, protractor]
    websocket spring-websocket
    applicationType monolith
    baseName eezibizi
    serverPort 8080
    authenticationType session
    cacheProvider hazelcast
    buildTool gradle
    useSass true
    clientPackageManager npm
    clientFramework react
  }
  entities *
}

如果有更好的方法,请建议

4

1 回答 1

1

问题是您有两个关系 from PersontoPayment但您没有为其中任何一个指定关系名称。默认名称将用于两者(payments我猜)给你留下两个具有相同名称的字段,这是不正确的,原因很明显。

给他们起名字,一切都应该正确生成。

relationship OneToMany {
  Person{outgoingPayments} to Payment{fromPerson}
  Person{incomingPayments} to Payment{toPerson}
}
于 2020-02-18T18:37:13.767 回答