2017-01-30 7 views
1

間のフィールド串は、私は2つのクラスを使用する場合、エンティティを保存する方法:私のすべてのエンティティのために春データ:エンティティの作成のための2つのクラス

基本クラスを(クラスレベルでのW/O任意の注釈)

public abstract class AbstractEntity { 

@Column(name ="date_of_creation",nullable = false) 
private LocalDateTime dateOfCreation; 

@Column(name="date_of_disable") 
private LocalDateTime dateOfDisable; 

@Column(name="date_of_update") 
private LocalDateTime dateOfUpdate; 

@Column(name="version_update") 
private Integer updateVersion; 

と実体

@Entity 
@Table(name = "cars") 
public class Car extends AbstractEntity { 

@Id 
@GeneratedValue(strategy = GenerationType.AUTO) 
private Long id; 

@Column(name="car_number", nullable = false, length = 10) 
private String carNumber; 

@ManyToOne(fetch = FetchType.EAGER) 
@JoinColumn(name = "brand_id", nullable = false) 
private CarBrand carBrand; 

も、私は春のデータDAOクラスを持っている:

public interface CarDAO extends CrudRepository<Car, Long> { 

@Override 
List<Car> findAll(); 

List<Car> findAllByCarNumber(String carNumber); 
} 

AbstractEntity(dateOfCreation、date_of_disable、date_of_update、version_update)のinitilizeが、carDAO.save(car)を呼び出すとDBに保存されないエンティティのフィールドに置かれたデータが問題です。 私が間違っていたこととその修正方法を説明することはできますか?

答えて

3

AbstractEntity@MappedSuperclassと注釈を付けるようにしてください。さもなければ、HibernateはプロパティーをAbstractEntityから永続性モデルの一部ではないとみなします。

+0

ありがとう、あなたのお勧めは本当に助けてくれました –

関連する問題