В приведенном ниже коде. Есть два псевдонима, как Entity Object
Ссылка. Иногда "caseStage" as stage
может быть null
в базе данных. Когда "caseStage"
равна нулю, я хочу stage.name
значение как пустой String
или что-то подгонять как "---"
и т.д.Критерий спящего режима, createAlias () Если Alias Null
session.createCriteria(CaseMasterPO.class)
.createAlias("branch", "br") // BranchPO.class
.createAlias("caseStage", "stage") // CaseStagePO.class
.setProjection(Projections.projectionList()
.add(Projections.property("caseCode"))
.add(Projections.property("br.zoneCode"))
.add(Projections.property("stage.name")) // Problem, when stage == null
)
.add(Restrictions.eq("caseCode", caseCode)).uniqueResult();
Обычно я использую coalesce (stage.name, '---') в HQL, так есть ли какой-либо механизм для запроса Criteria? –
В чем проблема, с которой вы сталкиваетесь .. пожалуйста, объясните, что ?? – Zulfi
Как вы показываете свои объекты на экране, не следует определять и указывать в запросе базы данных. Измените код уровня презентации, чтобы отобразить все, что угодно, в случае, если значение равно null. –