使用Jpa报错之Unable to locate Attribute with the the given name [***] on this ManagedType

在项目中使用Jpa对某一个字段进行查询,但是出现了以下报错信息:

Jpa查询规定了特定的查询dao:

@Data
@Accessors(chain = true)
public class SysPermissionQueryDao {

    @NotBlank
    @ApiModelProperty("权限id")
    @Query(field = "id", operator = Operator.IN)
    private List<Integer> ids;

    @NotBlank
    @ApiModelProperty(name = "权限类型, 1、菜单类型 2、功能模块 3、功能项")
    @Query(field = "permission_type", operator = Operator.EQ)
    private Integer permissionType;
}

网上的教程是这样,但是不知道为什么在自己的电脑上就报了这个错,于是乎第一次我更改了字段名,错误就没了。

分割线----------------------------------------------------------------------------------------------------

第二次出现错误,是将查询的字段名更改为使用的Java中使用的字段类型permissionType

@Data
@Accessors(chain = true)
public class SysPermissionQueryDao {

    @NotBlank
    @ApiModelProperty("权限id")
    @Query(field = "id", operator = Operator.IN)
    private List<Integer> ids;

    @NotBlank
    @ApiModelProperty(name = "权限类型, 1、菜单类型 2、功能模块 3、功能项")
    @Query(field = "permissionType", operator = Operator.EQ)                    // 修改为permissionType
    private Integer permissionType;

然后,成功解决错误????? 总之,我人傻了。

原文地址:https://www.cnblogs.com/hnxbp/p/14925484.html