Java 在Apache CXF中以编程方式创建排除参数?

Java 在Apache CXF中以编程方式创建排除参数?,java,rest,cxf,jax-rs,Java,Rest,Cxf,Jax Rs,我正在构建一个RESTful web服务,它使用QueryCriteria对象查询数据库。QueryCriteria有“颜色”和“形状”等字段 现在我有一个端点将查询参数绑定到此查询条件对象,例如 public String getObject(@Context final HttpServletRequest httpRequest_, @QueryParam("") final QueryCriteria criteria){ ... } 我想能够查询颜色=蓝色。但是,我能想到的唯一方法

我正在构建一个RESTful web服务,它使用QueryCriteria对象查询数据库。QueryCriteria有“颜色”和“形状”等字段

现在我有一个端点将查询参数绑定到此查询条件对象,例如

public String getObject(@Context final HttpServletRequest httpRequest_, 
@QueryParam("") final QueryCriteria criteria){
...
}
我想能够查询颜色=蓝色。但是,我能想到的唯一方法是,对于QueryCriteria中的每个字段,都有一个排除字段,例如excludeColor、excludeShape

这会给我的criteria对象增加很多膨胀,有更优雅的解决方案吗?

回答:

好的,我想到了一个解决方案

对于每个字段,设置两个设置器,例如setExcludeColor和setColor。两者都将修改一个对,其中对的左侧是要包含的内容,右侧是要排除的内容