创建一个简单的 XML-文档数据库 Java

Create a simple XML-document database Java

我需要一些 Java 帮助。

我有一个class这样的

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 class 另存为 XML 文件。 Jackson 是一个很好的库,它允许 JSON 和 XML encode/decode 并使用它,可以在给定 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>>(){});

虽然问题很宽泛,但我会尽力指导你。

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

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

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

中可以很好地工作

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