我正在測試,這將檢查對象是否已保存到數據庫中。測試將保存具有唯一值的對象,然后我想從數據庫中獲取這個對象并檢查它是否不為空。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'這個查詢應該是什么樣子的?
我應該如何將值傳遞給 JPQL 查詢?
慕婉清6462132
2021-07-21 18:00:52