Spring Data JPA 1.5.2,一对多自映射问题

时间:2018-06-06 10:09:57

标签: spring jpa spring-data spring-data-jpa hibernate-mapping

我有进程表,它维护与STATUS一起执行的进程的日志。 现在我有另一个功能,用户可以恢复/回滚进程。因此,对于每个进程,最多只能有一次成功回滚和许多失败的回滚。 exa:

  1. 主要流程:加载数据
  2. 还原流程1:失败
  3. 还原流程2:失败
  4. 还原流程3:成功
  5. 这些还原过程也在同一个Process表中维护,以便它们具有所有详细信息,例如who,when和for name od还原过程。

    Table : Process 
    Class : Process 
    Class members : 
        @Column(name="process_name")
        private String processName;
    
        @Temporal(TemporalType.DATE)
        @Column(name="trn_date")
        private Date transactionDate;
    
        @Column(name="user_name")
        private String user;
    
        @Temporal(TemporalType.TIMESTAMP)
        @Column(name="start_time")
        private Date startDateTime;
    
        @Temporal(TemporalType.TIMESTAMP)
        @Column(name="end_time")
        private Date endDateTime;
    
        @Column(name="process_status")
        private String status;
    
        @Column(name="status_detail")
        private String detail;
    

    我创建了另一个名为 Process_Reverse 的表,其中包含主进程的ID和它的反向过程。它将具有进程表中存在的id,并且该表可以被称为连接表。

    示例数据:

    Table : Process 
    Process Id | Process name  | Date       | Status  | .....
    1121       | DATA LOAD     | 25-05-2018 | Success | .....
    1125       | REV DATA LOAD | 26-05-2018 | Failed  | .....
    1127       | REV DATA LOAD | 26-05-2018 | Failed  | .....
    
    Table : Process_reverse
    
    Process Id | Rev Process Id  
    1121       | 1125
    1121       | 1127
    

    您能否告知过程 Java类中的配置应该是什么,我可以通过JoinTable将其加入到自身中? 我正在使用依赖

           <dependency>
                <groupId>org.springframework.data</groupId>
                <artifactId>spring-data-jpa</artifactId>            
                <version>1.5.2.RELEASE</version> 
           </dependency>
    

0 个答案:

没有答案