如何将 Long 值转换为 LongFilter?

How to cast a Long value into a LongFilter?

我正在尝试将 Long 值 (id) 转换为使用私有 LongFilter postId 的 class TagCriteria 的 LongFilter;创建一个我可以用来查询的对象

public ResponseEntity<List<TagDTO>> getAllTags(TagCriteria criteria, Pageable pageable)

但我不知道该怎么做,因为 Java 文档对我来说不是很清楚。

public class TagCriteria implements Serializable {
    private static final long serialVersionUID = 1L;
    private LongFilter id;
    private StringFilter tagName;
    private LongFilter postId;

    public TagCriteria() {
    }
}

过滤 class 可比类型,其中可以解释小于/大于/等关系。它可以作为成员添加到条件 class 中,以支持以下查询参数:

  fieldName.equals = 42
  fieldName.specified = true
  fieldName.specified = false
  fieldName.in = 43,42
  fieldName.greaterThan = 41
  fieldName.lessThan = 44
  fieldName.greaterOrEqualThan = 42
  fieldName.lessOrEqualThan = 44

由于类型转换问题,应使用后代 classes,泛型类型参数被具体化。

类型参数:

<FIELD_TYPE> the type of filter.

See also:
IntegerFilter
DoubleFilter
FloatFilter
LongFilter
LocalDateFilter
InstantFilter

感谢您的帮助!

试试这个:

Long longValue = 1L;
LongFilter longFilter = new LongFilter();
longFilter.setEquals(longValue);

如果需要调用REST服务,可以使用queryParam指定值。

例如,如果您的资源 'Person' 具有属性 'name',并且您需要检索所有姓名为 'John' 的人:

api/person?name.equals=John