gpt4 book ai didi

java - 如何使用 JPA 在数据库中保存相似数据的映射

转载 作者:行者123 更新时间:2023-12-01 15:13:33 25 4
gpt4 key购买 nike

我不知道如何设计这个rdbms问题:

假设我有一位客户正在购买。通过购买,他留下了自己的数据。我有第二个包含真实客户数据的数据集。收集完数据后,我想通过算法找到收集到的客户数据到真实客户的映射。

目前还不清楚如何保存该算法创建的映射/这些链接。

建议:

@Entity
public class Purchase{
@OneToOne
private Customerdata customerData;
}

@Entity
public class CustomerData{
private String firstName;
private String Lastname;
private String city;
}

@Entity
public class RealCustomer{

@OneToMany(cascade=CascadeType.ALL, mappedBy ="RealCustomer")
private List<CustomerData> customerData = new ArrayList<CustomerData>();
private String firstName;
private String Lastname;
private String city;
}

现在我可以将假设的从 RealCustomer 数据到 customerData 列表中的客户数据的映射保存起来。

我想这不是最好的主意?

希望您能提出好的建议。我可以利用真实客户数据和获取者客户数据的相似性吗?

请注意,我想保留不一致的数据,例如即使城市相似(“华盛顿特区”和“华盛顿”。我不想丢失此信息,以便稍后可以再次运行匹配算法。

注意:如果您向我提供粗略的想法,我没问题。不需要 Java/JPA 代码。

提前非常感谢您!

最佳答案

您可以执行如下操作

@Entity
public class Purchase{
@OneToOne
private Customer customer;
}

@Entity
public class Customer{
private String firstName;
private String Lastname;
private String city;
//Below association will only come in picture if customer has real customer data available when you are collecting the data this way you can clearly identify and separate collected vs real customers
@OneToOne
Customer realCustomer;
}

关于java - 如何使用 JPA 在数据库中保存相似数据的映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11973168/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com