【问题标题】:Create a simple XML-document database Java创建一个简单的 XML 文档数据库 Java
【发布时间】:2018-03-23 04:09:55
【问题描述】:

我需要一些 Java 帮助。

我有这样的课程

public class Thing {
    private String name;
    private int price;

public Thing(String name, int price) {
    this.name = name;
    this.price = price;
}

public String getName() {
    return name;
}

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

public int getPrice() {
    return price;
}

public void setPrice(int price) {
    this.price = price;
}
}

我的主要看起来像这样

public class Main {

public static void main(String[] args) {
    Thing Bowl = new Thing("Bowl", 20);
} }

我想做的是制作一个简单的 XML 文档数据库。所以我可以在我的数据库中添加不同类型的东西。如何在我的系统中实现这种数据库?

【问题讨论】:

    标签: java xml database class document-based-database


    【解决方案1】:

    将您所说的称为数据库是不正确的。您只想将 Java 类保存为 XML 文件。 Jackson 是一个很好的库,它允许 JSON 和 XML 编码/解码并使用它,可以像给定 POJO 一样完成:

    ObjectMapper xmlMapper = new XmlMapper();
    List<Thing> things = new ArrayList<>();
    
    things.add(bowl);
    
    String xmlData = xmlMapper.writeValueAsString(things);
    List<Thing> thingsFromXml = xmlMapper.readValue(xmlData, new TypeReference<List<Thing>>(){});
    

    【讨论】:

      【解决方案2】:

      虽然问题非常广泛,但我会尽力指导您。

      XML 的总体系统由各种子系统组成。首先,您将需要一种解析 XML 文档的方法。您可以使用许多开源库。即使您坚持从头开始编写,参考其他人所做的工作也总是有用的。

      看到这个: Which is the best library for XML parsing in java

      然后,一旦您有了一个可以解析文档的系统,您就需要一种方法来组织已解析的数据。解决方法取决于系统的实际使用情况。例如,如果您使用 XML 作为在游戏中加载数据的标准格式,从而处理许多不同类型的数据,例如项目、对象、位置等。您需要一种动态方式来重新加载数据,工厂设计模式在这个用例中可以很好地工作。

      看到这个:https://www.tutorialspoint.com/design_pattern/factory_pattern.htm

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-04-06
        • 1970-01-01
        • 2012-02-04
        • 2011-07-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多