【发布时间】:2019-07-21 09:04:05
【问题描述】:
我有一个带有一些查询的客户存储库类
@Repository
public interface CustomerRepository extends JpaRepository<Customers, Long>, JpaSpecificationExecutor<Customers> {
@Query("select c from Customers c where c.id = ?1 and c.deleted = false")
Optional<Customers> findCustomerById(Long id);
}
实体类:
import com.ntric.hariom.inventory.enums.CustomerStatus;
import com.ntric.hariom.inventory.enums.CustomerType;
import com.ntric.hariom.shared.domain.AbstractEntity;
import lombok.Getter;
import lombok.Setter;
import javax.persistence.Entity;
import javax.persistence.EnumType;
import javax.persistence.Enumerated;
@Getter
@Setter
@Entity
public class Customers extends AbstractEntity {
private String name;
private String mobile;
private Long accountId;
private String address;
@Enumerated(EnumType.ORDINAL)
private CustomerType type;
@Enumerated(EnumType.ORDINAL)
private CustomerStatus status;
private boolean isDeleted;
private String panNumber;
private String vatNumber;
}
在运行应用程序时,我收到以下消息。
原因:org.hibernate.QueryException:无法解析属性:已删除:com.ntric.hariom.inventory.domain.Customers 在 org.hibernate.persister.entity.AbstractPropertyMapping.propertyException(AbstractPropertyMapping.java:73) 在 org.hibernate.persister.entity.AbstractPropertyMapping.toType(AbstractPropertyMapping.java:67) 在 org.hibernate.persister.entity.AbstractEntityPersister.toType(AbstractEntityPersister.java:1873) 在 org.hibernate.hql.internal.ast.tree.FromElementType.getPropertyType(FromElementType.java:393)
堆栈跟踪非常大,所以我只粘贴错误部分。
【问题讨论】:
-
你能显示代码吗
-
我最近编辑了这个问题
-
这根本不是我问的。发布异常的完整和准确的堆栈跟踪,并发布客户实体的代码(实际上应该命名为客户)。还要发布存储库的完整代码,包括导入。
-
现在错误似乎与实体类@MilanPaudyal 中的“已删除”属性有关
-
将字段
isDeleted重命名为deleted。
标签: java spring-boot java-8 spring-data-jpa