java - 如何避免使用jpa2 criteriaBuilder.like中的输入 "%"

标签 java hibernate jpa

像这样:

criteriaBuilder.like( root.get("prop"), "%"+userInput+"%" ) 

如果userInput是字符%,如何避免查询输出?

最佳答案

尝试使用literal(),如下所示:

criteriaBuilder.like( root.get("prop"), "%" + criteriaBuilder.literal( userInput ) + "%" ) 

已编辑!

关于java - 如何避免使用jpa2 criteriaBuilder.like中的输入 "%",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45615452/

相关文章:

java - Hibernate 4。无效映射异常。无法读取 XML。必须声明元素类型 hibernate-mapping

mysql - 级联删除具有非级联外键的行

java - ActiveMQ 生产者多个队列一个 session

在 docker 容器中运行的 Java(JDK8 更新 131 之前)应用程序 CPU/内存问题?

java - 如果 poll 不一定返回第一项,ConcurrentLinkedQueue 是一个好的选择吗?

java - 无法将 Hibernate 查询结果列表转换为对象类

java - Spring EntityManager.persist 问题

检测到 JavaFX 未完成的资源锁

java - 使用实体管理器进行 SQL 查询

java - OpenJPA 将 1 <> 1 添加到 WHERE 子句