Skip to main content

Multiple Conditions Examples

AND Condition (1)

DataManipulationModel dataManipulationModel = new DataManipulationModel();
dataManipulationModel.setCriteria(
and(
condition("community.className", Operation.LIKE, "%9%"),
condition("gpa", Operation.GREATER_THAN, 3.5)
));
GeneralSpecification<Student> studentGeneralSpecification = new GeneralSpecification<>(dataManipulationModel);
studentRepository.findAll(studentGeneralSpecification);

AND Condition (2)

DataManipulationModel dataManipulationModel = new DataManipulationModel();
dataManipulationModel.setCriteria(
and(
condition("community.className", Operation.LIKE, "%9%"),
condition("gpa", Operation.GREATER_THAN, 3.5),
condition("additionalInfo", Operation.IS_NOT_NULL)
)
);
GeneralSpecification<Student> studentGeneralSpecification = new GeneralSpecification<>(dataManipulationModel);
studentRepository.findAll(studentGeneralSpecification);

OR Condition (1)

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

OR Condition (2)

DataManipulationModel dataManipulationModel = new DataManipulationModel();
dataManipulationModel.setCriteria(
or(
condition("community.className", Operation.EQUAL, "9th B"),
condition("community.className", Operation.EQUAL, "9th A")
)
);
GeneralSpecification<Student> studentGeneralSpecification = new GeneralSpecification<>(dataManipulationModel);
studentRepository.findAll(studentGeneralSpecification);

AND and OR Condition (1)

DataManipulationModel dataManipulationModel = new DataManipulationModel();
dataManipulationModel.setCriteria(
and(
or(
condition("community.className", Operation.EQUAL, "9th B"),
condition("community.className", Operation.EQUAL, "9th A")
),
condition("gpaLetter", Operation.IN, "A", "A-")
)
);
GeneralSpecification<Student> studentGeneralSpecification = new GeneralSpecification<>(dataManipulationModel);
studentRepository.findAll(studentGeneralSpecification);

AND and OR Condition (2)

DataManipulationModel dataManipulationModel = new DataManipulationModel();
dataManipulationModel.setCriteria(
or(
and(
condition("gpaLetter", Operation.IN, "A", "A-"),
condition("community.className", Operation.EQUAL, "9th B")
),
condition("community.className", Operation.EQUAL, "9th A")
)
);
GeneralSpecification<Student> studentGeneralSpecification = new GeneralSpecification<>(dataManipulationModel);
studentRepository.findAll(studentGeneralSpecification);

AND and OR Condition (3)

DataManipulationModel dataManipulationModel = new DataManipulationModel();
dataManipulationModel.setCriteria(
and(
condition("gpaLetter", Operation.IN, "A", "A-"),
or(
condition("community.className", Operation.EQUAL, "7th C"),
condition("community.className", Operation.EQUAL, "9th B"),
condition("community.className", Operation.EQUAL, "9th A")
)
)
);
GeneralSpecification<Student> studentGeneralSpecification = new GeneralSpecification<>(dataManipulationModel);
studentRepository.findAll(studentGeneralSpecification);

AND and OR Condition (4)

DataManipulationModel dataManipulationModel = new DataManipulationModel();
dataManipulationModel.setCriteria(
or(
condition("gpaLetter", Operation.EQUAL, "A+"),
condition("gpaLetter", Operation.EQUAL, "A"),
and(
condition("gpaLetter", Operation.EQUAL, "A-"),
condition("community.className", Operation.EQUAL, "7th C")
),
condition("community.className", Operation.EQUAL, "9th B"),
condition("community.className", Operation.EQUAL, "9th A")
)
);
GeneralSpecification<Student> studentGeneralSpecification = new GeneralSpecification<>(dataManipulationModel);
studentRepository.findAll(studentGeneralSpecification);

AND and OR Condition (5)

DataManipulationModel dataManipulationModel = new DataManipulationModel();
dataManipulationModel.setCriteria(
or(
and(
condition("id", Operation.IN, 1, 2, 3, 4),
condition("firstName", Operation.LIKE, "%a%")
),
and(
condition("id", Operation.IN, 11, 12, 13, 14),
condition("firstName", Operation.LIKE, "%s%")
)
)
);
GeneralSpecification<Student> studentGeneralSpecification = new GeneralSpecification<>(dataManipulationModel);
studentRepository.findAll(studentGeneralSpecification);

AND and OR Condition (6)

DataManipulationModel dataManipulationModel = new DataManipulationModel();
dataManipulationModel.setCriteria(
and(
or(
condition("id", Operation.IN, 1, 2, 3, 4),
condition("firstName", Operation.LIKE, "%a%")
),
or(
condition("id", Operation.IN, 11, 12, 13, 14),
condition("firstName", Operation.LIKE, "%s%")
)
)
);
GeneralSpecification<Student> studentGeneralSpecification = new GeneralSpecification<>(dataManipulationModel);
studentRepository.findAll(studentGeneralSpecification);

AND and OR Condition (7)

DataManipulationModel dataManipulationModel = new DataManipulationModel();
dataManipulationModel.setCriteria(
or(
condition("id", Operation.IN, 1, 2, 3, 4),
condition("firstName", Operation.LIKE, "%a%"),
and(
condition("id", Operation.IN, 11, 12, 13, 14),
condition("firstName", Operation.LIKE, "%s%")
)
)
);
GeneralSpecification<Student> studentGeneralSpecification = new GeneralSpecification<>(dataManipulationModel);
studentRepository.findAll(studentGeneralSpecification);

AND and OR Condition (8)

DataManipulationModel dataManipulationModel = new DataManipulationModel();
dataManipulationModel.setSortModel(asc("community.id"),
desc("firstName"));
dataManipulationModel.setCriteria(
and(
condition("gpa", Operation.GREATER_THAN, 3.5),
condition("community.className", Operation.LIKE, "%9%"),
or(
condition("additionalInfo", Operation.IS_NULL),
condition("additionalInfo", Operation.IS_EMPTY_STRING)
)
)
);
GeneralSpecification<Student> studentGeneralSpecification = new GeneralSpecification<>(dataManipulationModel);
studentRepository.findAll(studentGeneralSpecification);

AND and OR and NOT Condition

DataManipulationModel dataManipulationModel = new DataManipulationModel();
dataManipulationModel.setCriteria(
and(
not(
or(
condition("id", Operation.IN, 1, 2, 3, 4),
condition("firstName", Operation.LIKE, "%a%")
)
),
not(
or(
condition("id", Operation.IN, 11, 12, 13, 14),
condition("firstName", Operation.LIKE, "%s%")
)
)
)
);
GeneralSpecification<Student> studentGeneralSpecification = new GeneralSpecification<>(dataManipulationModel);
studentRepository.findAll(studentGeneralSpecification);