gpt4 book ai didi

java - Apache 使用 Java 显示旧错误

转载 作者:行者123 更新时间:2023-12-02 05:19:02 25 4
gpt4 key购买 nike

我在使用 Java 和 Apache 时遇到了问题。在我使用 JDBC 并现在转换为 JPA 之前,我正在开发一个小项目来了解所有这些内容。我有一个显示人员的页面,您也可以使用搜索栏过滤列表。

问题是当我运行 Apache 并尝试使用搜索栏过滤列表时,它显示一个旧错误,我已多次更改该错误。

public static List<Person> search(String search) {
EntityManager em = null;
try {
em = JpaUtil.getFactory().createEntityManager();

TypedQuery<Person> query = em.createQuery("select p from Person p where upper(p.first_name) like upper('%" + search + "%')", Person.class);

return query.getResultList();
} finally {
JpaUtil.closeQuietly(em);
}
}

但是我收到一个 Apache 错误,内容如下:

org.hibernate.QueryException: expecting ''', found '<EOF>' [select * from customer where upper(first_name) like upper('%%') or upper(surname) like upper('%%'')]

这是我的旧代码,我缺少什么?我已经检查了所有代码,但似乎无法找到旧部分不断显示为错误的原因。

最佳答案

你应该使用占位符

有一个问题看起来像您的问题,所以我认为它可能对您有帮助:

QueryException in Hibernate because of apostrophe

关于java - Apache 使用 Java 显示旧错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26652601/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com