Java 这是一只奥姆利特虫子吗?

Java 这是一只奥姆利特虫子吗?,java,ormlite,Java,Ormlite,WhereAPI 4.48中有一个使用Where子句的示例,其内容与此完全相同: QueryBuilder<Account, String> qb = accountDao.queryBuilder(); Where where = qb.where(); // the name field must be equal to "foo" where.eq(Account.NAME_FIELD_NAME, "foo"); // and where.and(); // the passw

Where
API 4.48中有一个使用
Where
子句的示例,其内容与此完全相同:

QueryBuilder<Account, String> qb = accountDao.queryBuilder();
Where where = qb.where();
// the name field must be equal to "foo"
where.eq(Account.NAME_FIELD_NAME, "foo");
// and
where.and();
// the password field must be equal to "_secret"
where.eq(Account.PASSWORD_FIELD_NAME, "_secret");
PreparedQuery<Account, String> preparedQuery = qb.prepareQuery();
在准备查询之前。它看起来像是内部
,其中
对象在API建议它应该这样做时没有发生变化

还有其他人经历过同样的经历吗

更新


看起来甚至不调用
setWhere()
都能让它工作。不知何故,我把试验搞砸了。

我发现了问题,这是我的错。调试时,我多次调用
QueryBuilder
对象上的
where()
。但是,正如
方法的文档所述:

公共Where Where()

返回一个Where对象,该对象应用于将SQL Where子句添加到语句中。这还将重置where对象,以便可以将同一查询生成器与不同的where语句一起使用


正在重置内部
where
对象。

我改进了
where()
方法的javadocs,使其更简单。感谢您不断改进这些小细节。干杯
qb.setWhere(where);