List<xxxVo> employees = employeeInfoService.findEmployeeInfos(searchVo).stream()
.filter(distinctByKey(emp -> emp.getAdminEmployeeInfoSeq()))
.collect(Collectors.toList());
/**
* 키값 중복 제거를 위한 함수
* - putIfAbsent : key 값이 없다면 입력 된 key 와 value 를 입력, 해당 key 가 존재하면 입력 되었던 값 반환
* - 키와 연관된 이전 값 또는 키에 대한 맵핑이 없는 경우 널
* - 따라서 t가 맵에 존재하지 않는 객체만 반환
* @param keyExtractor
* @param <T>
* @return
*/
private static <T> Predicate<T> distinctByKey(Function<? super T,Object> keyExtractor) {
Map<Object,Boolean> seen = new ConcurrentHashMap<>();
return t -> seen.putIfAbsent(keyExtractor.apply(t), Boolean.TRUE) == null;
}