如何将Long值转换为LongFilter?

时间:2019-01-05 12:44:17

标签: spring-boot jhipster

我试图将Long值(id)转换为使用私有LongFilter postId的TagCriteria类的LongFilter;创建一个可用于查询的对象

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

但是我不知道如何做,因为我对Java Doc并不十分了解。

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

    public TagCriteria() {
    }
}

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

  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

由于类型转换存在问题,应使用后代类,其中要实现泛型类型参数。

类型参数:

<FIELD_TYPE> the type of filter.

See also:
IntegerFilter
DoubleFilter
FloatFilter
LongFilter
LocalDateFilter
InstantFilter

感谢您的帮助!

1 个答案:

答案 0 :(得分:2)

尝试一下:

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

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

例如,如果您的资源“人”具有属性“名称”,则需要检索所有名称为“约翰”的人:

api/person?name.equals=John