Java 在MongoDB中获取ObjectID的JUnit测试
阅读本文,了解如何在Java 在MongoDB中获取ObjectID的JUnit测试,java,mongodb,junit,Java,Mongodb,Junit,阅读本文,了解如何在MongoDB中获取ObjectID。虽然我在谷歌上搜索了一下,但是没有任何关于使用MongoDB进行JUnit测试的内容。不管怎样,如果JUnit测试中存在用户,我可以获取这个Id进行测试吗 下面是JUnit测试 public class UserDAOTest2 { @Test public void testCreate() { //fail("Not yet implemented");
MongoDB
中获取ObjectID
。虽然我在谷歌上搜索了一下,但是没有任何关于使用MongoDB进行JUnit
测试的内容。不管怎样,如果JUnit测试中存在用户,我可以获取这个Id进行测试吗
下面是JUnit测试
public class UserDAOTest2 {
@Test
public void testCreate() {
//fail("Not yet implemented");
User user1 = new User();
user1.setEmail("lucy@gmal.com");
user1.setFirstName("Lucy");
user1.setPassword("welcome123");
UserDAO userDAO = new UserDAO();
user1 = userDAO.create(user1);
assertTrue(user1.getId() > 0);
}
}
用户POJO
public class User implements Serializable {
private ObjectId id;
private String email;
private String firstName;
private String lastName;
private String fulleName;
private String password;
// getter/setter below
}
虽然从prasad那里得到了很好的建议,但我很难将CodeRegistry放入我的数据库类,如下所示…(我知道它一定是错的)
更新:我需要导入以下内容,使其工作可能
import static org.bson.codecs.configuration.CodecRegistries.fromProviders;
import static org.bson.codecs.configuration.CodecRegistries.fromRegistries;
您为
用户的id
属性分配的是什么?它是文档的\u id
的默认值吗?在这种情况下,系统在插入新文档时生成值。另请注意,\u id
值是唯一的。@prasad\u是的,我想要获得的默认\u id,因为我知道不建议创建另一个uid(例如,在MongoDB中作为用户id)。我的目标是在用户实体中获取_id而不是userId。您的user
类是什么?请参阅如何在MongoDB Java中使用POJO。是的,您需要使用示例中所示的编解码器来处理POJO类。同时发布User.Java类的代码。
import static org.bson.codecs.configuration.CodecRegistries.fromProviders;
import static org.bson.codecs.configuration.CodecRegistries.fromRegistries;