Java 为存储在表列中的对象列表提供什么数据类型

Java 为存储在表列中的对象列表提供什么数据类型,java,oracle-sqldeveloper,Java,Oracle Sqldeveloper,我正在尝试为数据库中的用户创建表 然而,我在为地址列表提供数据类型时遇到了麻烦 对于列表地址,SK_用户表中地址列的数据类型应该是什么 请找到我的DTO类- package com.shopcart.dto; import java.util.List; public class User { private String name; private String email; private String mobile; private int age;

我正在尝试为数据库中的用户创建表 然而,我在为地址列表提供数据类型时遇到了麻烦 对于列表地址,SK_用户表中地址列的数据类型应该是什么

请找到我的DTO类-

package com.shopcart.dto;

import java.util.List;

public class User {

    private String name;
    private String email;
    private String mobile;
    private int age;
    List<Address> adresses;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public String getMobile() {
        return mobile;
    }

    public void setMobile(String mobile) {
        this.mobile = mobile;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public List<Address> getAdresses() {
        return adresses;
    }

    public void setAdresses(List<Address> adresses) {
        this.adresses = adresses;
    }

    @Override
    public String toString() {
        return "User [name=" + name + ", email=" + email + ", mobile=" + mobile + ", age=" + age + ", adresses="
                + adresses + "]";
    }
}
package com.shopcart.dto;
导入java.util.List;
公共类用户{
私有字符串名称;
私人字符串电子邮件;
私有字符串移动;
私人互联网;
名单地址;
公共字符串getName(){
返回名称;
}
公共void集合名(字符串名){
this.name=名称;
}
公共字符串getEmail(){
回复邮件;
}
公用电子邮件(字符串电子邮件){
this.email=电子邮件;
}
公共字符串getMobile(){
返回手机;
}
公共void setMobile(字符串移动){
this.mobile=mobile;
}
公共整数getAge(){
回归年龄;
}
公共无效设置(整数){
这个。年龄=年龄;
}
公共列表getAddresses(){
回信地址;
}
公共无效设置地址(列表地址){
这个地址=地址;
}
@凌驾
公共字符串toString(){
return“User[name=“+name+”,email=“+email+”,mobile=“+mobile+”,age=“+age+”,address=”
+地址+“]”;
}
}

yi如果要将多个地址存储到单个用户中,则需要再创建一个表
address
,您可以在其中使用UserId和address来存储地址。然后为地址表创建
AddressDTO
。并使用List,它存储了许多对象的
AddressDTO

但您需要将
id
列添加到用户表和dto类中

例如:

package com.shopcart.dto;

import java.util.List;

public class AddressDTO{

    private int userId;
    private String address;

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address= address;
    }


    public int getUserIde() {
        return userId;
    }

    public void setUserId(int userId) {
        this.userId= userId;
    }

}

这里的
Address
es列表意味着有两个表和一对多关系。一个用户可以有多个地址。所以在
Address
表中有一个
userId
列,而
User
中没有与地址相关的内容。