Я использую Spring Data Mongo
и его Criteria
операции. В этом случае я написал условие критерия, которое работает нормально. Но как-то мне нужно установить ""
, если firstName пустое или пустое и т. Д. Для других полей. Если я не укажу ""
, тогда он принимает значение null
, что приводит к разным результатам.
Есть ли способ, если мы сможем эффективно изменить приведенное ниже условие?
Criteria criteria = new Criteria();
criteria.andOperator(
StringUtils.isNotBlank(firstName) ? Criteria.where("firstName").is(firstName.toUpperCase()) : Criteria.where(""),
StringUtils.isNotBlank(middleName) ? Criteria.where("middleName").is(middleName.toUpperCase()): Criteria.where(""),
StringUtils.isNotBlank(lastName) ? Criteria.where("lastName").is(lastName) : Criteria.where(""),
StringUtils.isNotBlank(emailId) ? Criteria.where("departments.emailId").is(emailId) : Criteria.where(""),
StringUtils.isNotBlank(isActive)? Criteria.where("departments.defaultSw").is(isActive.toUpperCase()) : Criteria.where(""),
StringUtils.isNotBlank(codeStyle) ? Criteria.where("departments.codeStyle").is(codeStyle): Criteria.where(""));