2017-09-09 42 views
0

私は春に新しくなりました。私はAUDITテーブルにデータを挿入したいと思います。 USERAUDITテーブルの間には1対2の関係があります。spring jpaで1対多の関係にデータを挿入する方法

すべてのログインとログアウトのデータは、AUDITテーブルに挿入する必要があります。どうやってやるの?

ユーザエンティティ:

@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; 

監査エンティティ:

@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; 

監査リポジトリ:

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

ユーザーリポジトリ:

public interface UserRepository extends JpaRepository<User, Long> { 

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

} 
+0

は私が(読みやすくするために、できればより多くの答え)の書式 –

+0

トーマス・フリッチュは、あなたが、私は多くの関係に一つにデータを挿入する方法を教えてください –

答えて

1

監査を関連付けるユーザーに監査を追加し、保存します。

+0

Thanku letsBeFrank..canありがとうを改善しました。.. –

+0

user.getAudits() .add(newAudit); userRepository.save(user); – LetsBeFrank

+0

いずれかの回答がREST API経由で追加したい –

関連する問題