2012-04-29 3 views
2

Hibernateで定義されたカラムを再利用することは可能ですか?Hibernateの再利用可能な変更/作成されたカラムを構築する

私は、それぞれが少なくとも修正と作成を必要とする約20のテーブルと、これらのすべてのカラムで同じ他のフィールドを持っています。

私はこれをやって試してみた:

public class ModifiedCreated { 

    @Temporal(TemporalType.TIMESTAMP) 
    @DateTimeFormat(style = "M-") 
    private Date created; 

    @Version 
    @Temporal(TemporalType.TIMESTAMP) 
    @DateTimeFormat(style = "M-") 
    private Date modified; 

    public ModifiedCreated() { 
     created = new Date(); 
     modified = new Date(); 
    } 

    @PrePersist 
    protected void onPersist() { 
     if (created == null) { 
      created = new Date(); 
     } 
     if (modified == null) { 
      modified = new Date(); 
     } 
    } 

    @PreUpdate 
    protected void onUpdate() { 
     modified = new Date(); 
    } 

    public Date getModified() { 
     return modified; 
    } 

    public Date getCreated() { 
     return created; 
    } 
} 

そしてRoute.java

@RooJavaBean 
@RooToString 
@RooEntity 
public class Route extends ModifiedCreated { 

    private String name; 

    @ManyToMany(cascade = CascadeType.ALL) 
    private Set<Note> notes = new HashSet<Note>(); 
} 

は、Hibernateで再使用する列に、それは可能ですか?

答えて

3

私はあなたの答えを10回upvoteことができれば、私はあることを行っているでしょう@MappedSuperclass注釈 (それは休止状態のための注釈です。私は、しかし、これで何をすべきか、ばねカンガルー知らない)

+0

であなたのModifiedCreatedクラスに注釈を付けます完璧なソリューションをありがとう! –

+0

PS、@MappedSuperclassは、最新のSpring Roo(1.2.1)で問題を引き起こしています。 –

関連する問題