0

当我运行下面的代码时,会创建一个具有预期属性的新用户。(我在运行测试后与 Neoclipse 确认)。但是,findByPropertyValue无法检索用户。它只是返回空值。当我调试时,我发现它usrFromDb1似乎只包含空值,即使是我后来确认那些值实际上也保存在数据库中!有没有人有解决方案的想法?

  @Test(enabled = true, groups = {"functest"})
    public void shouldGetUserDetails() throws Exception {
      User user = new User("admin", "secretpw").persist();

      User usrFromDb1 = userRepository.findOne(user.getId());
      assertNotNull(usr1); //succeeds

      User usrFromDb2 = userRepository.findByPropertyValue("username", "admin");
      assertNotNull(usr2); //fails
}

在此处输入图像描述

4

1 回答 1

2

您的用户名属性是否有@Indexed属性。

你能介绍一下你的User班级吗?

在此映射模式下,调试 b/c 中的用户字段为空,它们由 AspectJ 透明处理,如果您user.getUserName()在调试器中调用,则应产生该值。

usrFromDb2此外,您的断言中的变量名称与查询结果中的变量名称不匹配。usr2

于 2011-11-04T18:55:44.460 回答