我有一个休息服务,该服务将返回List
个对象
public class MyObject {
private String name;
private String state;
}
现在,我需要基于rest调用中提供的字段从列表中过滤对象:
http://localhost:8080/myuri?state=NY
现在,我需要开发自定义过滤器,但我发现property filter并不是我想要的东西。有没有办法做到这一点。
答案 0 :(得分:3)
您无需使用Jackson
来执行此操作。只需使用Stream API
对其进行过滤。如果数据是从DB
加载的,请使用SQL
的{{1}}子句对其进行过滤。
示例:
WHERE
如果您有缓存列表,则可以按以下方式对其进行过滤:
@GetMapping(value = "/states", produces = MediaType.APPLICATION_JSON_VALUE)
@ResponseBody
public List<MyObject> loadStates(@RequestParam(name = "state", defaultValue = "NY", required = false) String[] states) {
return service.loadAndFilterByState(states);
}
另请参阅: