MySQL データベースでデータの履歴を作成するより良い方法はどれですか?
プロジェクト、タスク、アクティビティ、フェーズのテーブルがあり、データを更新するたびに、変更ごとに履歴を作成する必要があります。実際、私はプロジェクト、タスク、アクティビティ、およびフェーズを管理する ProjectManager を作成しました。私はこれらのリンクを持っているので:
1 つのプロジェクトは多くのタスクで構成され、タスクは多くのアクティビティで構成され、アクティビティは多くのフェーズで構成されます。
したがって、たとえば、Historical_Phase、Historical_Activity、Historical_Task、および Historical_Projet を作成することが私の問題にとってより良い方法であるかどうかはわかりません。
または、ProjetMediator_Historical の方が優れていますか?
私はこれを扱ったことはありません。誰か助けてください。
以下の ProjectMediator 関係コードを参照してください。
public class ProjetMediator implements Serializable {
private static final long serialVersionUID = 1L;
public static final String FIND_PROJECT_BY_ID_PROJECTMEDIATOR = "ProjetMediator.findProjetMediatorByIdProjet";
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
@OneToOne
@JoinColumn(name="id_projet")
private Projet projet;
@ManyToMany( targetEntity=Tache.class, fetch=FetchType.LAZY )
private List<Tache> taches;
@ManyToMany( targetEntity=Activite.class, fetch=FetchType.LAZY )
private List<Activite> activites;
@ManyToMany( targetEntity=Phase.class, fetch=FetchType.LAZY )
private List<Phase> phases;
//get and sets
}
ありがとうございました。