Skip to main content

Main Operations Examples

Equal Long Value

DataManipulationModel dataManipulationModel = new DataManipulationModel();
dataManipulationModel.setCriteria(condition("id", Operation.EQUAL, 1L));
GeneralSpecification<Student> studentGeneralSpecification = new GeneralSpecification<>(dataManipulationModel);
studentRepository.findAll(studentGeneralSpecification);

Equal Double Number

DataManipulationModel dataManipulationModel = new DataManipulationModel();
dataManipulationModel.setCriteria(condition("gpa", Operation.EQUAL, 3.2));
GeneralSpecification<Student> studentGeneralSpecification = new GeneralSpecification<>(dataManipulationModel);
studentRepository.findAll(studentGeneralSpecification);
DataManipulationModel dataManipulationModel = new DataManipulationModel();
dataManipulationModel.setCriteria(condition("community.id", Operation.EQUAL, 5L));
GeneralSpecification<Student> studentGeneralSpecification = new GeneralSpecification<>(dataManipulationModel);
studentRepository.findAll(studentGeneralSpecification);

Equal LocalDate

DataManipulationModel dataManipulationModel = new DataManipulationModel();
dataManipulationModel.setCriteria(condition("dateOfBirth", Operation.EQUAL, LocalDate.of(1997, 5, 7)));
GeneralSpecification<Student> studentGeneralSpecification = new GeneralSpecification<>(dataManipulationModel);
studentRepository.findAll(studentGeneralSpecification);

In Long Values

DataManipulationModel dataManipulationModel = new DataManipulationModel();
dataManipulationModel.setCriteria(condition("students.id", Operation.IN, 1, 2));
GeneralSpecification<Community> communityGeneralSpecification = new GeneralSpecification<>(dataManipulationModel);
communityRepository.findAll(communityGeneralSpecification);

In String Value

DataManipulationModel dataManipulationModel = new DataManipulationModel();
dataManipulationModel.setCriteria(condition("gpaLetter", Operation.IN, "A", "A-", "A+"));
GeneralSpecification<Student> studentGeneralSpecification = new GeneralSpecification<>(dataManipulationModel);
studentRepository.findAll(studentGeneralSpecification);

Not In String Value

DataManipulationModel dataManipulationModel = new DataManipulationModel();
dataManipulationModel.setCriteria(condition("gpaLetter", Operation.NOT_IN, "A", "A-", "A+"));
GeneralSpecification<Student> studentGeneralSpecification = new GeneralSpecification<>(dataManipulationModel);
studentRepository.findAll(studentGeneralSpecification);

In Without Values

DataManipulationModel dataManipulationModel = new DataManipulationModel();
dataManipulationModel.setCriteria(condition("id", Operation.IN));
GeneralSpecification<Community> communityGeneralSpecification = new GeneralSpecification<>(dataManipulationModel);
communityRepository.findAll(communityGeneralSpecification);

Like

DataManipulationModel dataManipulationModel = new DataManipulationModel();
dataManipulationModel.setCriteria(condition("firstName", Operation.LIKE, "%Aya%"));
GeneralSpecification<Student> studentGeneralSpecification = new GeneralSpecification<>(dataManipulationModel);
studentRepository.findAll(studentGeneralSpecification);

Not Like

DataManipulationModel dataManipulationModel = new DataManipulationModel();
dataManipulationModel.setCriteria(condition("firstName", Operation.NOT_LIKE, "%Aya%"));
GeneralSpecification<Student> studentGeneralSpecification = new GeneralSpecification<>(dataManipulationModel);
studentRepository.findAll(studentGeneralSpecification);
DataManipulationModel dataManipulationModel = new DataManipulationModel();
dataManipulationModel.setCriteria(condition("students.lastName", Operation.LIKE, "Ri%"));
GeneralSpecification<Community> communityGeneralSpecification = new GeneralSpecification<>(dataManipulationModel);
communityRepository.findAll(communityGeneralSpecification);

Greater Than

DataManipulationModel dataManipulationModel = new DataManipulationModel();
dataManipulationModel.setCriteria(condition("gpa", Operation.GREATER_THAN, 3.2));
GeneralSpecification<Student> studentGeneralSpecification = new GeneralSpecification<>(dataManipulationModel);
studentRepository.findAll(studentGeneralSpecification);

Greater Than Or Equal

DataManipulationModel dataManipulationModel = new DataManipulationModel();
dataManipulationModel.setCriteria(condition("gpa", Operation.GREATER_THAN_EQUAL, 3.2));
GeneralSpecification<Student> studentGeneralSpecification = new GeneralSpecification<>(dataManipulationModel);
studentRepository.findAll(studentGeneralSpecification);

Less Than

DataManipulationModel dataManipulationModel = new DataManipulationModel();
dataManipulationModel.setCriteria(condition("gpa", Operation.LESS_THAN, 3.2));
GeneralSpecification<Student> studentGeneralSpecification = new GeneralSpecification<>(dataManipulationModel);
studentRepository.findAll(studentGeneralSpecification);

Less Than Or Equal

DataManipulationModel dataManipulationModel = new DataManipulationModel();
dataManipulationModel.setCriteria(condition("gpa", Operation.LESS_THAN_EQUAL, 3.2));
GeneralSpecification<Student> studentGeneralSpecification = new GeneralSpecification<>(dataManipulationModel);
studentRepository.findAll(studentGeneralSpecification);

Greater Than LocalDate

DataManipulationModel dataManipulationModel = new DataManipulationModel();
dataManipulationModel.setCriteria(condition("dateOfBirth", Operation.GREATER_THAN, LocalDate.of(1997, 5, 7)));
GeneralSpecification<Student> studentGeneralSpecification = new GeneralSpecification<>(dataManipulationModel);
studentRepository.findAll(studentGeneralSpecification);

Is Empty String

DataManipulationModel dataManipulationModel = new DataManipulationModel();
dataManipulationModel.setCriteria(condition("address", Operation.IS_EMPTY_STRING));
GeneralSpecification<Student> studentGeneralSpecification = new GeneralSpecification<>(dataManipulationModel);
studentRepository.findAll(studentGeneralSpecification);

Is Not Empty String

DataManipulationModel dataManipulationModel = new DataManipulationModel();
dataManipulationModel.setCriteria(condition("address", Operation.IS_NOT_EMPTY_STRING));
GeneralSpecification<Student> studentGeneralSpecification = new GeneralSpecification<>(dataManipulationModel);
studentRepository.findAll(studentGeneralSpecification);

Is Null

DataManipulationModel dataManipulationModel = new DataManipulationModel();
dataManipulationModel.setCriteria(condition("community", Operation.IS_NULL));
GeneralSpecification<Student> studentGeneralSpecification = new GeneralSpecification<>(dataManipulationModel);
studentRepository.findAll(studentGeneralSpecification);

Is True

DataManipulationModel dataManipulationModel = new DataManipulationModel();
dataManipulationModel.setCriteria(condition("isFullTime", Operation.IS_TRUE));
GeneralSpecification<Student> studentGeneralSpecification = new GeneralSpecification<>(dataManipulationModel);
studentRepository.findAll(studentGeneralSpecification);

Is False

DataManipulationModel dataManipulationModel = new DataManipulationModel();
dataManipulationModel.setCriteria(condition("isFullTime", Operation.IS_FALSE));
GeneralSpecification<Student> studentGeneralSpecification = new GeneralSpecification<>(dataManipulationModel);
studentRepository.findAll(studentGeneralSpecification);

Between Double

DataManipulationModel dataManipulationModel = new DataManipulationModel();
dataManipulationModel.setCriteria(condition("gpa", Operation.BETWEEN, 3.2, 3.9));
GeneralSpecification<Student> studentGeneralSpecification = new GeneralSpecification<>(dataManipulationModel);
studentRepository.findAll(studentGeneralSpecification);

Between Date

DataManipulationModel dataManipulationModel = new DataManipulationModel();
dataManipulationModel.setCriteria(condition("enrollmentDate", Operation.BETWEEN, LocalDate.of(2022, 2, 15),
LocalDate.of(2022, 7, 1)));
GeneralSpecification<Student> studentGeneralSpecification = new GeneralSpecification<>(dataManipulationModel);
studentRepository.findAll(studentGeneralSpecification);