如何在休眠OGM中使用mongodb查询?

时间:2018-07-08 05:21:15

标签: mongodb hibernate-ogm

我只想在我的注册集中找到用户名字段

我正在使用以下查询

db.Registration.find( {"username":"abcd"},  {username:1, _id:0} )

如何在休眠状态下编写此查询?

2 个答案:

答案 0 :(得分:0)

如果您的实体看起来像这样:

N2

这应该有效:

@Entity
class Registration {
  @Id
  String id;

  String username:
}

String query = "FROM Registration r WHERE r.username = :username ORDER by r.username ASC, r.id DESC"
List<Registration> results = entityManager.createQuery( query )
                               .setParameter("username", "abcd")
                               .getResultList()

您也可以使用本机查询,但我会让您进入文档:https://docs.jboss.org/hibernate/ogm/5.4/reference/en-US/html_single/#ogm-mongodb-queries-native

答案 1 :(得分:-1)

您需要使用以下注释注释要在实体中检索的(无PK)列:

@Column(name = "username")