Поддерживать заказ с присоединением OneToMany - PullRequest
2 голосов
/ 06 июля 2019

Я использую весеннюю загрузку и хочу добавить список продуктов на страницу в качестве внешнего ключа, но как я могу поддерживать порядок ArrayList при получении из базы данных?Должна ли я иметь промежуточную таблицу, например, PageProductOrder, которая содержит первичный ключ продукта и столбец заказа?

@Entity
public class Page {
    @OneToMany
    @JoinColumn(name = "product_id")
    private List<Product> products;

Ответы [ 2 ]

3 голосов
/ 06 июля 2019

Вы можете сделать это, используя @OrderColumn - здесь будет использоваться столбец в сущности для упорядочения:

@OneToMany
@JoinColumn(name = "product_id")
@OrderColumn(name = "product_index")
private List<Product> products;

Столбец product_index в Product сущности будетиспользоваться для поддержания порядка.

2 голосов
/ 06 июля 2019

Вы можете определить порядок, используя аннотацию @OrderBy.

@OneToMany
@JoinColumn(name = "product_id")
@OrderBy(value = "name ASC")
private List<Product> products;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...