У меня есть следующие определения сущностей.
public class Order {
@Id
@DocumentId
private Long id;
@Field
@IndexedEmbedded(includePaths = {"name"})
@OneToOne
@JoinColumn(name = "ACCOUNT_ID")
private Account account;
// the rest are omitted for brevity purpose
}
public class Account {
@Id
@DocumentId
private Long id;
@SortableField(forField = "name_Sort")
@Field(name = "name_Sort", store = Store.YES, normalizer= @Normalizer(definition = SearchConstants.LOWER_CASE_NORMALIZER))
@Column(name = "NAME")
private String name;
}
Если я выполняю поиск по заказу и хочу отсортировать результаты поиска по имени учетной записи, есть ли хороший способ сделать это, возможно, используя встроенную индексированную аннотацию? Я знаю, что мы можем сделать это, добавив дополнительное строковое поле в Order, которое называется accountName, а затем просто добавим сортировочную аннотацию поверх этого. Можно ли этого добиться, не указав в порядке заказа аннотацию сортировки, а просто используя аннотацию сортировки, которая уже определена в учетной записи?