#kotlin #kotlin-exposed
#kotlin #kotlin-раскрыл
Вопрос:
Я сделал ссылку «многие ко многим» в ExposedBD (kotlin) следующим образом в вики:https://github.com/JetBrains/Exposed/wiki/DAO#many-to-many-reference
Однако возникает проблема бесконечной рекурсии (Jackson), когда я пытаюсь вернуть список объектов в моем API (Javalin). Итак, я хотел бы знать, как поместить аннотацию @jsonIgnore
или есть ли другие альтернативные решения в этом случае. Вот отображение:
// many-to-many Actor--StarWarsFilms
// Actor Entity
object Actors: IntIdTable() {
val firstname = varchar("firstname", 50)
val lastname = varchar("lastname", 50)
}
class Actor(id: EntityID<Int>): IntEntity(id) {
companion object : IntEntityClass<Actor>(Actors)
var firstname by Actors.firstname
var lastname by Actors.lastname
}
// StarWarFilm Entity
object StarWarsFilms : IntIdTable() {
val sequelId = integer("sequel_id").uniqueIndex()
val name = varchar("name", 50)
val director = varchar("director", 50)
}
class StarWarsFilm(id: EntityID<Int>) : IntEntity(id) {
companion object : IntEntityClass<StarWarsFilm>(StarWarsFilms)
var sequelId by StarWarsFilms.sequelId
var name by StarWarsFilms.name
var director by StarWarsFilms.director
var actors by Actor via StarWarsFilmActors
}
// Intermediate table
object StarWarsFilmActors : Table() {
val starWarsFilm = reference("starWarsFilm", StarWarsFilms).primaryKey(0)
val actor = reference("actor", Actors).primaryKey(1)
}
Комментарии:
1. Что именно вы хотите прокомментировать? В kotlin есть
use-site
синтаксис для аннотаций: kotlinlang.org/docs/reference /…2. Спасибо за ответ. Итак, я хочу использовать одну из стратегий, найденных в Java, для решения проблемы бесконечной рекурсии. Я хочу поместить аннотацию @jsonignore в атрибут, который отображается как FK. В этом случае атрибутом является «актеры» в классе StarWarsFilm. Я проверю сайт, однако, если есть другие способы решить эту проблему, это будет здорово.
3. Привет @jukabarros ты нашел решение?