In our Spring-Data-Rest project, do we have a custom (fuzzy) endpoint search / buergers / search / findBuergerFuzzy? searchString = "...".
Is it possible to add a link for it to the endpoint / buergers / search (Without overriding the automatically exposed Repository search methods)?
Controller displaying search:
@BasePathAwareController @RequestMapping("/buergers/search/") public class BuergerSearchController { @Autowired QueryService service; @RequestMapping(value = "/findBuergerFuzzy", method = RequestMethod.GET) public @ResponseBody ResponseEntity<?> findBuergerFuzzy(PersistentEntityResourceAssembler assembler, @Param("searchString") String searchString) { if (searchString.length() < 3) throw new IllegalArgumentException("Search String must be at least 3 chars long."); List<Buerger> list = service.query(searchString, Buerger.class, new String[]{"vorname", "nachname", "geburtsdatum", "augenfarbe"}); final List<PersistentEntityResource> collect = list.stream().map(assembler::toResource).collect(Collectors.toList()); return new ResponseEntity<Object>(new Resources<>(collect), HttpStatus.OK); } }
source share