Java o、 h.engine.jdbc.spi.SqlExceptionHelper:错误:语法错误位于或接近“(”

Java o、 h.engine.jdbc.spi.SqlExceptionHelper:错误:语法错误位于或接近“(”,java,rest,jpa,jpql,Java,Rest,Jpa,Jpql,我正在尝试制作一个用户API,但是我的简单查询出现了上面的错误。请查找下面的代码 在日志中,我认为这是一个错误 Hibernate: Select new UserResponse(u.user_id,u.user_name,u.password) from public."DetailsCompany" u where user_id =? 2020-08-26 20:31:49.078 WARN 26274 --- [nio-7071-exec-2] o.h.engi

我正在尝试制作一个用户API,但是我的简单查询出现了上面的错误。请查找下面的代码

在日志中,我认为这是一个错误

Hibernate: Select new  UserResponse(u.user_id,u.user_name,u.password) from public."DetailsCompany" u where user_id =?
2020-08-26 20:31:49.078  WARN 26274 --- [nio-7071-exec-2] o.h.engine.jdbc.spi.SqlExceptionHelper   : SQL Error: 0, SQLState: 42601
2020-08-26 20:31:49.078 ERROR 26274 --- [nio-7071-exec-2] o.h.engine.jdbc.spi.SqlExceptionHelper   : ERROR: syntax error at or near "("

您正在将HQL传递给本机查询。请将nativeQuery更改为false

将您的查询更改为

@Query(value="Select new  com.company.user.Response.UserResponse(u.userId,u.userName,u.password) from UserEntity u where u.userId =:id",nativeQuery = false)

您正在将HQL传递给本机查询。请将nativeQuery更改为false

将您的查询更改为

@Query(value="Select new  com.company.user.Response.UserResponse(u.userId,u.userName,u.password) from UserEntity u where u.userId =:id",nativeQuery = false)

构造函数名称必须是完全限定的。请尝试使用com.your.package.UserResponse

构造函数名称必须是完全限定的。尝试使用com.your.package.UserResponse

查询方法public abstract com.company.user.Response.UserResponse com.company.user.Repository.UserRepository.finduserbydjava.lang.Intege时验证失败r!,设置为false后,我得到了上述异常。您的查询有错误。请检查UserResponse类构造函数和Details公司映射,是否正确?此外,我认为您可以删除双引号。我正在使用lombok并为三个字段的构造函数应用所有注释,删除双引号后:ERROR:relation public.detailscompany不存在您可以发布您的详细信息公司类吗?查询方法public abstract com.company.user.Response.UserResponse com.company.user.Repository.UserRepository.findUserByIdjava.lang.Integer!的验证失败,将其设为false后,我将获得上述异常您的查询有错误。请检查UserResponse类构造函数d details公司映射,是否正确?另外,我认为您可以删除双引号。我正在使用lombok并为三个字段的构造函数应用所有注释。删除双引号后:错误:relation public.details公司不存在您可以发布您的details公司类吗?我已经尝试过了,但这并不能解决我的问题mSELECT new UserResponseu.user\id,u.user\u name,u.password FROM{h-schema}详细信息公司u其中user\u id=:id,nativeQuery=true。你能试试这个吗?@GauravI已经试过了,但这并不能解决我的问题选择new UserResponseu.user\id,u.user\u name,u.password FROM{h-schema}详细信息u公司,其中user\u id=:id,nativeQuery=true。你能试试这个吗?@Gaurav