1
두 개의 BooleanExpression을 추가하려고합니다. 하나는 조절 BooleanExpression이고, 다른 하나는 Path 밖으로 생성됩니다. Path의 사용법이 잘못되었다고 생각합니다. 내 코드 :경로로 기존 BooleanExpression에 부울 식을 추가하는 DSL 쿼리 <?>
public static Path<?> getPathByColumnName(String columnName) {
Path<?> retval = null;
QProfile p = QProfile.profile;
if (columnName.equals("name")) {
retval = p.name;
} else if (columnName.equals("account")) {
retval = p.account.name;
} else if (columnName.equals("isPublic")) {
retval = p.isPublic;
} else if (columnName.equals("datavendors")) {
retval = p.dataVendors.any().name;
}
return retval;
}
경로는 다음 방법으로 전송된다
공용 static BooleanExpression getFilterPredicateByFilterAndPath (패스 경로 FilerType 타입 필터 문자열) { BooleanExpression RETVAL = NULL;
if (path instanceof StringPath) {
if (FilerType.CONTAIN.equals(type)) {
retval = ((StringPath)path).like(filter);
}
} else if (path instanceof BooleanPath) {
if (FilerType.EQUAL.equals(type)) {
retval = ((BooleanPath)path).eq(Boolean.valueOf(filter));
}
}
return retval;
}
다음으로 나는 recived BooleanExpression을 regulare로 abbend하려고합니다. 이것은 작동하지 않습니다. 어떤 아이디어라도 환영 할 것입니다.
어떻게 작동하지 않습니까? 예외가 있습니까? 또한 어떻게 그들을 결합하려고합니까? –