Назад к задачамПолучайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Junior — Middle+
5
Поиск пользователей по заданному фильтру с игнорированием пустых параметров
Компании, где спрашивали:
DCloud
Условие задачи
Необходимо реализовать метод searchByCriteria в классе UserService, который ищет пользователей в базе согласно переданному объекту UserFilter. При построении запроса следует:
- пропускать поля фильтра, которые равны null или пустой строке;
- если заданы оба поля (firstName и lastName) – применять их совместно;
- использовать возможности Spring Data JPA через UserRepository;
- вернуть список всех найденных сущностей User.
public class UserService {
private final UserRepository userRepo;
public List<User> searchByCriteria(UserFilter filter) {
}
}
@RequiredArgsConstructor
@Getter
public class UserFilter {
private final String firstName;
private final String lastName;
}
@Entity
public class User {
@Id
private Long id;
private String firstName;
private String lastName;
}
public interface UserRepository extends JpaRepository<User, Long> {
}