原语句

Path<String> namePath = root.get(entry.getKey()); predicate = cb.like(namePath, "%" + entry.getValue() + "%");
由于某些字段可能不是 String 类型,因此可能会报错,改成如下即可:
Path<Object> namePath = root.get(entry.getKey()); predicate = cb.like(namePath.as(String.class), "%" + entry.getValue() + "%");