用Java存储人员数据的好方法?

时间:2013-07-07 05:15:30

标签: java data-storage

我想存储一些数据,如名字,姓氏,出生日期,地址,电话号码等。总共可能会有大约50个字段。存储数据的好方法是什么?我正在考虑使用一个名为Person的类,并在其中放入一堆成员用于字段。例如:

public class Person {
    private String fName;
    private String mName;
    private String lName;
    private String dob;
    private String address;
    private String phNumber;
    private String sex;
    private String aka;
    // etc...
    public void setfName(String st) {
        fName = st;
    }
    public String getfName() {
        return fName;
    }
    // etc....
}

有没有更好的方法来执行此任务?

修改

我还应该提到插入到Microsoft Word模板中的每个数据字段(希望如果我弄清楚如何去做)。我不一定计划处理超出该范围的数据。我现在所拥有的是一个pdf文档,我可以从中提取文本。我将解析该文本并尝试从中获取所有数据。然后我会将该数据插入到单词模板中(如果可能的话)。

2 个答案:

答案 0 :(得分:5)

这取决于您的需求。

对每条信息使用String可能是一个坏主意。您应该使用适当的数据类型来存储您的信息。

  • 出生日期的Calendar个实例
  • 性别enum
  • 地址的自定义类,其中包含门牌号,街道,单元号,城市,州,邮政编码等字段。

答案 1 :(得分:1)

您可以将它们存储在散列图中:

private Map<String, String> data = new HashMap<String, String>();

public void insertData(String key, String value)
{
    data.put(key, value);
}

public String lookup(String key)
{
    return data.get(key);
}
insertData("fName", "blah blah");
insertData("address", "blah blah");

String address = lookup("address");

您可以获得所有可用密钥的列表:

Set<String> keys = data.keySet();

另一种选择是使用builder pattern