Код: Выделить всё
@Entity
@Table(name = "a")
class AModel(
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
var id: Long? = null,
)
< /code>
и второй с одним к одному отношению к этому Previos One < /p>
@Entity
@Table(name = "b")
class BModel(
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
var id: Long? = null,
@field:OneToOne
@JoinColumn(name = "original_a_id")
var originalA: AModel? = null,
)
< /code>
Затем в Brepository у меня есть метод для получения экземпляра B по идентификатору соответствующей модели A. < /p>
fun findByOriginalAId(originalAId: Long): BModel?< /code> < /p>
, что до недавнего времени он работал правильно, но я пытаюсь обновить свое приложение до Spring 3.4 и последней версии Hibernate, и это проблема.
Этот метод на репозитории больше не находит модель. и по умолчанию, чтобы нулевой, и делите спятить фактическую генерацию значений, которую я прочитал, мне нужно сделать.@Query("SELECT b FROM BModel b WHERE b.originalA.id = :originalAId")Но почему мне внезапно нужно это сделать? Есть ли способ получить тот же результат без громоздкой аннотации?
Подробнее здесь: https://stackoverflow.com/questions/796 ... ated-table