2012-05-09 24 views
0

私はすべてのクラス/エンティティに対してIDとタイムスタンプを持つModelBaseを使用します。しかし、ときに私のユーザー私はSpringデータを使用したモデルベース(継承)JPA

Not an entity: class java.lang.Long 

は、コードのメッセージを取得JPARepository<>インタフェースの主キーのLongタイプ:

@MappedSuperclass 
public class ModelBase implements Serializable { 
    @Id 
    @GeneratedValue(strategy = GenerationType.AUTO) 
    private Long id; 

    @Column(nullable = false, columnDefinition = "datetime") 
    private Date lastModified; 

    public Long getId() { 
     return id; 
    } 

    public void setId(Long id) { 
     this.id = id; 
    } 

    public Date getLastModified() { 
     return lastModified; 
    } 

    public void setLastModified(Date lastModified) { 
     this.lastModified = lastModified; 
    } 

    @PreUpdate 
    @PrePersist 
    public void updateLastModified() { 
     lastModified = new Date(); 
    } 

} 

ModelclassがModelbaseから

@Entity 
@Table(name = "Name") 
public class Name extends ModelBase implements Serializable {} 

をinheritancedをレポ

public interface NameRepository extends JpaRepository<Long, Name>{} 

何が間違っていますか?それは後方だ

おかげ

答えて

3

JpaRepository<Name, Long> 

まずエンティティID。 JPARepository javadocを確認してください。

+0

これは本当に恥ずかしいです、ありがとうございます。 – KenavR

+0

問題ありません!答えを受け入れることを忘れないでください:) – Luciano

+0

私は、10minsを待つ必要があります。 – KenavR

関連する問題