jor*_*cke 6 hibernate spring-data
我正在使用Spring Data,我创建了包含在"AbstractEntity"中的实体,所有对象都扩展为获取基本列
AbstractEntity:
@MappedSuperclass
public abstract class AbstractEntity implements Serializable{
@Temporal(TemporalType.TIMESTAMP)
@Column(nullable = false)
private Date CreatedDate;
@PrePersist
protected void onCreate() {
UpdatedDate = CreatedDate = new Date();
}
...
Run Code Online (Sandbox Code Playgroud)
和我的对象/实体
@Entity
public class Trade extends AbstractEntity {
Run Code Online (Sandbox Code Playgroud)
当我尝试使用我的存储库创建方法时 findByCreatedDateAfter(Date date)
我得到一个例外,无法找到该列......?
public interface TradeRepository extends CrudRepository<Trade, Long>{
public List<Trade> findByCreatedDateAfter(Date date);
}
Run Code Online (Sandbox Code Playgroud)
它编译(如果我使用某些capitolization)但是试图映射查询,我得到:
Caused by: java.lang.IllegalArgumentException: Unable to locate Attribute with the the given name [createdDate] on this ManagedType [streaming.data.AbstractEntity]
Run Code Online (Sandbox Code Playgroud)
我还想返回sum(amount)此期间的金额列之一.
Oli*_*ohm 10
查询派生机制要求应用标准Java属性命名约定.有没有财产createdDate,因为它被称为CreatedDate在你的类.
要自定义到某个列的映射,请使用@Column注释(因此名称).
| 归档时间: |
|
| 查看次数: |
14260 次 |
| 最近记录: |