ORMLite + MySQL:如何找到一个匹配的记录?

时间:2014-05-17 22:21:39

标签: java mysql ormlite

我有一个名为“Article”的java类,它使用ORMLite与MySQL数据库进行连接/通信。我的插入工作,但我有一个问题只检索一个文章(对应于mysql数据库表中的一行)给定一个“id”(在mysql数据库表中自动递增)。

似乎我必须使用List变量来保存查询结果:

Dao<Article,String> articleDAO = DaoManager.createDao(connectionSource, Article.class);
List<Article> article = articleDAO.queryForEq("id", id); /* is there a method to find only one matching record and returns an Article type ? */

我希望做这样的事情:

Article article = articleDAO.queryOne("id", id);

2 个答案:

答案 0 :(得分:1)

使用查询List<Article> article = articleDAO.queryForEq("id", id);,然后执行以下操作:

if (article != null && article.size() !=0){
  return article.get(0)
} else {
  return null;
}

答案 1 :(得分:0)

  

文章文章= articleDAO.queryOne(&#34; id&#34;,id);

呃,你读过online docs中的任何一个吗? dao.queryForId(id)是所有地方引用的内容。它旨在返回与行的唯一ID匹配的值,方式与dao.update(...)dao.refresh(...)更改和从数据库中读取该行的方式相同。

此外,还有dao.queryForFirst(preparedQuery)从查询中获取第一个结果。