2016-05-18 11 views
1

Ich möchte in AbstractAuditingEntity teilnehmerbezogenen Daten wie seine id hinzuzufügen.Wie AbstractAuditingEntity in jhipster anpassen

AbstractAuditingEntity hinzufügen Dinge wie createdDate mit jeder Entität erstellt. Ich möchte hinzufügen und zusätzliche Einheit wie ID des Benutzers zusammen mit ihm.

Damit jedesmal, wenn ein Benutzer ein Objekt erstellt, wird seine ID mit diesem Datensatz zusammen mit dem Erstellungsdatum hinzugefügt.

+0

Bitte genug ist, Aktualisiere deine Antwort mit einer Frage. – LoicTheAztec

Antwort

1

Sie können die folgende Klasse, die als Elternklasse für alle

Einheiten verwenden
import java.io.Serializable; 
import java.util.UUID; 

import javax.persistence.GeneratedValue; 
import javax.persistence.Id; 
import javax.persistence.MappedSuperclass; 
import javax.persistence.PrePersist; 
import javax.persistence.PreUpdate; 
import javax.persistence.Version; 
import javax.validation.constraints.NotNull; 

import org.joda.time.DateTime; 
import org.springframework.security.core.context.SecurityContextHolder; 
import org.springframework.security.core.userdetails.User; 

import com.skeleton.util.RequestContext; 

/** 
* The parent class for all transactional persistent entities. 
* 
* @author shijazi 
*/ 
@MappedSuperclass // here is the important annotation 
public class TransactionalEntity implements Serializable { 

    /** 
    * The default serial version UID. 
    */ 
    private static final long serialVersionUID = 1L; 

    /** 
    * The primary key identifier. 
    */ 
    @Id 
    @GeneratedValue 
    private Long id; 

    /** 
    * A secondary unique identifier which may be used as a reference to this 
    * entity by external systems. 
    */ 
    @NotNull 
    private String referenceId = UUID.randomUUID().toString(); 

    /** 
    * The entity instance version used for optimistic locking. 
    */ 
    @Version 
    private Integer version; 

    /** 
    * A reference to the entity or process which created this entity instance. 
    */ 
    @NotNull 
    private String createdBy; 

    /** 
    * The timestamp when this entity instance was created. 
    */ 
    @NotNull 
    private DateTime createdAt; 

    /** 
    * A reference to the entity or process which most recently updated this 
    * entity instance. 
    */ 
    private String updatedBy; 

    /** 
    * The timestamp when this entity instance was most recently updated. 
    */ 
    private DateTime updatedAt; 

    public Long getId() { 
     return id; 
    } 

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

    public String getReferenceId() { 
     return referenceId; 
    } 

    public void setReferenceId(String referenceId) { 
     this.referenceId = referenceId; 
    } 

    public Integer getVersion() { 
     return version; 
    } 

    public void setVersion(Integer version) { 
     this.version = version; 
    } 

    public String getCreatedBy() { 
     return createdBy; 
    } 

    public void setCreatedBy(String createdBy) { 
     this.createdBy = createdBy; 
    } 

    public DateTime getCreatedAt() { 
     return createdAt; 
    } 

    public void setCreatedAt(DateTime createdAt) { 
     this.createdAt = createdAt; 
    } 

    public String getUpdatedBy() { 
     return updatedBy; 
    } 

    public void setUpdatedBy(String updatedBy) { 
     this.updatedBy = updatedBy; 
    } 

    public DateTime getUpdatedAt() { 
     return updatedAt; 
    } 

    public void setUpdatedAt(DateTime updatedAt) { 
     this.updatedAt = updatedAt; 
    } 

    @PrePersist 
    public void beforePersist() { 

     setCreatedBy(username); 

     setCreatedAt(new DateTime()); 
    } 


    @PreUpdate 
    public void beforeUpdate() { 

     setUpdatedBy(username); 

     setUpdatedAt(new DateTime()); 
    } 
} 

und das Unternehmen wie folgt aus:

@Entity 
public class Person extends TransactionalEntity{ 

     @NotNull 
     private String personId; 

     private String arabicName; 

     private String englishName; 



     public String getPersonId() { 
      return personId; 
     } 

     public void setPersonId(String personId) { 
      this.personId = personId; 
     } 

     public String getArabicName() { 
      return arabicName; 
     } 

     public void setArabicName(String arabicName) { 
      this.arabicName = arabicName; 
     } 

     public String getEnglishName() { 
      return englishName; 
     } 

     public void setEnglishName(String englishName) { 
      this.englishName = englishName; 
     } 
} 

Ich hoffe, diese Antwort für Sie