为了账号安全,请及时绑定邮箱和手机立即绑定

我应该如何将值传递给 JPQL 查询?

我应该如何将值传递给 JPQL 查询?

慕婉清6462132 2021-07-21 18:00:52
我正在测试,这将检查对象是否已保存到数据库中。测试将保存具有唯一值的对象,然后我想从数据库中获取这个对象并检查它是否不为空。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'这个查询应该是什么样子的?
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 156 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信