Sqlite 从UML实现数据库

Sqlite 从UML实现数据库,sqlite,foreign-keys,uml,Sqlite,Foreign Keys,Uml,我最近建模了一个基本上涉及关联的UML图。假设代码是: public class Seller{ private int idSeller; private String name; private String passw; private List<Phone> phones = new ArrayList<Phone>(); public Seller() { } public Sel

我最近建模了一个基本上涉及关联的UML图。假设代码是:

public class Seller{
    private int idSeller;
    private String name;
    private String passw;
    private List<Phone> phones = new ArrayList<Phone>();

    public Seller() {           
    }

    public Seller(int idSeller, String name, String passw, List<Phone>phones) {
        super();
        this.idSeller = idSeller;
        this.name = name;
        this.passw = passw;
        this.phones = phones;
    }

    //getters and setters
}
我不想限制卖家可以拥有的手机数量,而且这只是我全部代码的摘录

现在,我需要创建SQLite数据库并在其中插入数据,但我对如何表示从UML到数据库的关联有点困惑

如果我没有使用OO,我会在电话表中放一个foreing键,表示拥有电话的卖家id,但OO的概念让我怀疑这是正确的方法


我对UML有很好的理解,但这是我第一次尝试实现UML图并从数据库加载数据。有人能帮我说一下什么是正确的方法吗?

我想你真的需要仔细阅读数据库理论。这是一个非常简单的模式编写-几乎是一个hello的模式世界。不要认为它是UML或OO的术语——这些术语在考虑数据时是错误的。您需要考虑如何组织数据。程序员的工作是在以后将其映射到对象中

你有两张桌子。表一是一张卖家表。它有一个id(它是您的主键)、一个名称和一个密码(应该以散列形式存储,而不是以明文形式存储)。第二张桌子是电话。它有一个id(主键)、一个数字和一个类型为int的所有者字段,int是卖方id上的外键


当您确实需要将数据加载到代码中时,首先通过表1上的查询加载卖方结构(而不是数组)。然后查询表2中所有具有匹配卖家id的手机,并循环返回,将其添加到手机阵列中。

两次向下投票,没有解释。有人能告诉我出了什么问题吗?在数据库表之间需要一个外键。你刚刚体验过对象关系阻抗,我喜欢这个术语“对象关系阻抗”,它准确地代表了发生在我身上的事情。谢谢
public class Phone {
    private int idPhone;
    private String description;
    private String number; //will have some chars in it

    public Phone() {
    }

    public Phone(int idPhone, String description, String number) {
        super();
        this.idPhone = idPhone;
        this.description = description;
        this.number = number;
    }

    //getters and setters
}