2017-09-09 4 views
0

Ich bin neu im Frühling. Ich möchte die Daten in die Tabelle AUDIT einfügen. Zwischen den Tabellen USER und AUDIT besteht eine Eins-Zwei-Viele-Beziehung.wie man Daten in einer Beziehung im Frühjahr jpa einfügt

Für jede Anmeldung und Abmeldung sollten Daten in die AUDIT Tabelle eingefügt werden. Wie kann ich das machen?

Der Benutzer Einheit:

@Table(name="USER") 
public class User { 

    @Id 
    @GeneratedValue(strategy=GenerationType.AUTO) 
    @Column(name="USERID") 
    private Long id; 

    private String username; 

    private String email; 

    private Long phone; 

    private String password; 

    private int OTP; 

    private boolean activation_flag; 

    @OneToMany(cascade=CascadeType.ALL) 
    @JoinColumn(name="USERID") 
    private Set<Audit> audit; 

    @ManyToOne 
    @JoinColumn(name="ADDRESSID") 
    private Address address; 

    @ManyToMany(fetch = FetchType.EAGER) 
    @JoinTable(
      name = "USER_AUTHORITY", 
      joinColumns = {@JoinColumn(name = "USER_ID", referencedColumnName = "USERID")}, 
      inverseJoinColumns = {@JoinColumn(name = "AUTHORITY_ID", referencedColumnName = "ID")}) 
    private List<Authority> authorities; 

Die Prüfungsunternehmen:

@Entity 
@Table(name="AUDIT") 
public class Audit { 

    @Id 
    @GeneratedValue(strategy=GenerationType.AUTO) 
    @Column(name="AUDITID") 
    private long auditid; 

    @Column(name="GEOLOCATION") 
    private String geolocation; 

    @Column(name="ACTION") 
    private String action; 

    @Column(name="DATETIME") 
    private Date datetime; 

    @Column(name="DEVICEID") 
    private long deviceid; 

    @Column(name="ACTIONSUCCESS_FAIL") 
    private boolean actionsuccess_fail; 

    @Column(name="JWT_TOKEN") 
    @Type(type="text") 
    private String JWT_token; 

    @ManyToOne 
    private User user; 

Das Audit-Repository:

public interface AuditRepository extends JpaRepository<Audit, Long> { 
} 

Benutzerrepository:

public interface UserRepository extends JpaRepository<User, Long> { 

    User findByUsername(String username); 
    User findByEmail(String email); 
    User findByPhone(Long phone); 
    User findById(Long id); 

} 
+0

Ich habe Formatierung verbessert (für bessere Lesbarkeit und hoffentlich mehr Antworten) –

+0

Thomas Fritsch danke –

Antwort

1

Fügen Sie das Audit dem Benutzer hinzu, mit dem Sie das Audit verknüpfen möchten, und speichern Sie es.

+0

Thanku letsBeFrank..can Sie mir bitte sagen, wie kann ich Daten in einer zu viele Beziehungen .. –

+0

user.getAudits() einfügen .add (neuAudit); dann userRepository.save (Benutzer); – LetsBeFrank

+0

jemand Antwort haben möchte ich durch REST API hinzufügen –

Verwandte Themen