Я пишу REST API с помощью Spring Boot.Поэтому я получаю сотрудников по имени.Я передаю параметр Pageable
для сортировки, проблема в том, что направление игнорируется.Поэтому Spring всегда сортирует asc
nerve desc
, что является поведением по умолчанию.Я понятия не имею, что я делаю неправильно.
Мне нужно добавить, что сортировка в целом работает, потому что, если я не передам параметр chrValue
как sort
, я получу такие элементы, как онихранятся в БД.
Запрос:
http://localhost:8080/dimensionAttributeValues/search/findDimensionAttributeValueByDimensionAttributeDimensionAttributeID?dimensionAttributeId=1&page=0&size=1&sort=chrValue&chrValue.dir=desc
Репозиторий:
@RepositoryRestResource(collectionResourceRel = "dimensionAttributeValue", path = "dimensionAttributeValues")
@CrossOrigin(exposedHeaders="Access-Control-Allow-Origin")
public interface DimensionAttributeValueRepository extends PagingAndSortingRepository<DimensionAttributeValue, Long> {
Page<DimensionAttributeValue> findDimensionAttributeValueByDimensionAttributeDimensionAttributeID(@Param(value = "dimensionAttributeId") long dimensionAttributeId, Pageable pageable);
Page<DimensionAttributeValue> findDimensionAttributeValueByMasterDataMasterDataIDAndDimensionAttributeDimensionAttributeID(@Param(value = "masterDataId") long masterDataId, @Param(value = "dimensionAttributeId") long dimensionAttributeId, Pageable pageable);
Page<DimensionAttributeValue> findDimensionAttributeValueByDimensionAttributeDimensionDimensionIDOrDimensionAttributeDimensionAttributeIDOrderByChrValue(@Param(value="dimensionID") long dimensionID, @Param(value = "dimensionAttributeID") long dimensionAttributeID, Pageable pageable);
Page<DimensionAttributeValue> findAllByDimensionAttributeDimensionAttributeIDAndChrValueStartingWith(@Param(value = "dimensionAttributeId") long dimensionID, @Param(value = "chrValue") String chrValue, Pageable pageable);
}
Объект:
@Entity
@Table(name = "DimensionAttributeValue")
public class DimensionAttributeValue {
@Id
@GeneratedValue
@Column(name = "DimensionAttributeValue_ID")
private long dimensionAttributeValueID;
@ManyToOne
@JoinColumn(name = "DimensionAttribute_ID")
private DimensionAttribute dimensionAttribute;
@ManyToOne
@JoinColumn(name = "MasterData_ID")
private MasterData masterData;
@Column (name = "ChrValue")
private String chrValue;
@Column (name = "IntValue")
private Long intValue;
@Column (name = "DecValue")
private Double decValue;
@Column (name = "DatValue")
private String datValue;
@Column (name = "BlnValue")
private Boolean blnValue;
@ManyToOne
@JoinColumn (name = "LnkValue")
private DimensionAttributeValue lnkValue;
@ManyToOne
@JoinColumn (name = "LstValue")
private DimensionAttributeList lstValue;
@Column (name = "StartDate")
private Date startDate;
// [...]
}
Любые идеи?Спасибо!