2

与我之前的问题类似,如何再次从 ormlite 中删除记录我可以按 ID 检索记录为

public BO Retrieve(int id) throws SQLException {
        TEntity entity = this.dao.queryForId(id);

        return getBizObject(entity);
    }

但是如何不通过 id 而是通过 user_id 等任何其他字段来检索记录?

我想了解用于检索记录的查询生成器

4

1 回答 1

8

这是一个 RTFM 答案。ORMLite QueryBuider很好的文档记录,有一些很好的例子:

http://ormlite.com/docs/query-builder

引用手册中的内容,如下所示将查询特定字段。

QueryBuilder<Account, String> queryBuilder = dao.queryBuilder();
queryBuilder.where().eq(Account.PASSWORD_FIELD_NAME, "qwerty");
List<Account> accountList = queryBuilder.query();

用于定义各种比较的javadocsQueryBuilder是在线的,并且用于定义各种比较的Where对象 javadocs也提供了很好的信息。手册中还有一个部分是构建更复杂的查询

此外,如果您只是查询单个字段,那么DAO 有一个 queryForEq(...)方法可以QueryBuilder为您完成这些工作。

public static final顺便说一句,如果您指的是在常量中定义它的字段的名称,建议您:

public class Account {
    public static final String PASSWORD_FIELD_NAME = "password"; 
    ...
    @DatabaseField(canBeNull = false, columnName = PASSWORD_FIELD_NAME)
    private String password;
于 2012-08-29T11:55:21.477 回答