Java标准API-从id=id的表中选择*

Java标准API-从id=id的表中选择*,java,sql,criteria-api,Java,Sql,Criteria Api,我是CriteriaAPI的新手,正在尝试构建一个id与id匹配的select查询 我想建立这个: SELECT * FROM movie WHERE id = id(input var) 到目前为止,我有一个长的输入变量id: 这将产生错误,并且不起作用。有什么办法让它工作吗 错误: 类型CriteriaQuery中的whereExpression方法不适用于参数路径,Long您的where条件应如下所示: .where(criteriaBuilder.equal(rootMovie.get

我是CriteriaAPI的新手,正在尝试构建一个id与id匹配的select查询

我想建立这个:

SELECT * FROM movie WHERE id = id(input var)
到目前为止,我有一个长的输入变量id:

这将产生错误,并且不起作用。有什么办法让它工作吗

错误: 类型CriteriaQuery中的whereExpression方法不适用于参数路径,Long

您的where条件应如下所示:

.where(criteriaBuilder.equal(rootMovie.get("movieId"), id));

请添加错误消息。我不知道API应该如何工作,但您在critQuery.selectrootMovie.whererootMovie.getmovieId,id;-get真的有两个参数吗?有点输入错误+添加了错误,可能是
.where(criteriaBuilder.equal(rootMovie.get("movieId"), id));