gpt4 book ai didi

java - 如何在没有 queryBuilder 的情况下定义 ORMLite 中的位置

转载 作者:行者123 更新时间:2023-12-01 11:34:27 25 4
gpt4 key购买 nike

使用 ORMLite 时可以在没有 queryBuilder 的情况下定义Where对象吗?我想定义很多 where 查询,并在稍后获取数据库的 queryBuilder 时应用我的约束。

所以,我会有这样的东西。首先创建查询:

    ...
myQ1 = new MyQuery ({something}...where.ge("Date", lowValue).and().le("Date", hiValue))
myQ2 = new MyQuery ({something}...where.eq("Date", dateValue))
...

哪里

public class MyQuery {
Where where;

// Constructor
public MyQuery1 (Where dbWhere) {
this.where = dbWhere;
}
...

因此,根据我的条件,我可以稍后调用不同的查询:myQ1 或 myQ2:

    QueryBuilder<Object, String> queryBuilder = dao.queryBuilder();

Where mainWhere = queryBuilder.where();

...case....
mainWhere.add(myQ1.where);
...
mainWhere.add(myQ2.where);

...

所以,我的问题是如何正确书写:

new MyQuery1 ( /* something... */
where.ge("Date", lowValue).and().le("Date", hiValue))

所有其他部分都已经可以工作了。如果我尝试 newWhere() 它需要一个 queryBuilder。

最佳答案

当然可以,它会像这样工作:

    Where<YourClass, YourId> where = qB.where();
where.and(firstWhere, secondWhere, otherWheres)
qB.setWhere(where)

但请注意,如果没有 queryBuilder 实例,则无法创建 Where

关于java - 如何在没有 queryBuilder 的情况下定义 ORMLite 中的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30145012/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com