我嵌套POJO象下面這樣:SQL表達式一樣嵌套obejct
class Parent{
String name;
Child child;
}
class Child{
String name;
}
會是什麼類似SQL的查詢的名字相匹配的孩子呢?
到目前爲止,我有這樣的:
CQNParser<Parent> parser = CQNParser.forPojoWithAttributes(Parent.class, AttributeBytecodeGenerator.createAttributes(Parent.class));
ParseResult<Notification> parseResult = parser.parse("equal(\"child\".\"name\" , \"John\")");
Prent p = new Parent().setChild(new Child().setName("John"));
boolean matches = parseResult.getQuery().matches(p, parseResult.getQueryOptions());
這給我 Failed to parse query at line 1:21: mismatched input '.' expecting ','
感謝@npgall,據我所知,'AttributeBytecodeGenerator.createAttributes(Parent.class)'返回帶有'name'和'child'鍵的地圖...我期望得到帶有'name'的平面地圖,''孩子'和'child.name' attrubites –
好點。我更新了答案以提供更多關於這與'AttributeBytecodeGenerator'相關的信息 – npgall