我正在测试,这将检查对象是否已保存到数据库中。测试将保存具有唯一值的对象,然后我想从数据库中获取这个对象并检查它是否不为空。Id 是自动生成的,所以我需要按名称找到这个对象。我的测试是这样的:@Testpublic void shouldAddNewEmployee(){ String firstNameTest = "Jon"; String lastNameTest = "Doe"; double salary1test = 10.0; String salary2test = "10.00"; String localityTest = "LosAngeles"; String zipCodeTest = "00-000"; String streetTest = "LosAngeles str."; int streetNumberTest = 10; Employee testEmployee = new Employee( firstNameTest, lastNameTest, salary1test, salary2test, localityTest, zipCodeTest, streetTest, streetNumberTest); EmployeeRepository.addNewEmployeeFromCLI(testEmployee); String customQueryFindJonDoe = "select e from Employee e where e.firstName = Jon and e.lastName = Doe"; EntityManager entityManager = JPAUtils.openEntityManager(); List<Employee> foundJonDoe = entityManager.createQuery(customQueryFindJonDoe).getResultList(); Assertions.assertNotEquals(null, foundJonDoe); if (entityManager.isOpen()) { entityManager.close(); }} 运行后我得到错误:引起:com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:'where 子句'中的未知列'Jon'这个查询应该是什么样子的?
添加回答
举报
0/150
提交
取消