Java db4o Хранение и получение

Я пытаюсь работать с db4o, просто знакомясь с хранением и получением значений. Мой путь к файлу, указывающий на файл, правильный, и нет никаких синтаксических ошибок. Мне просто интересно, почему это вывод, который я получаю из консоли при запуске программы (я также создал простой класс Contacts):

Stored Contact@289d1c02
[Contact@289d1c02]

Как я могу получить значения вместо адреса памяти?

public static void main(String[] args) throws Throwable{

    Contact contact1 = new Contact("Bob", "01/01/01");

    ObjectContainer db = Db4oEmbedded.openFile(Db4oEmbedded.newConfiguration(), DB4OFILENAME);

    try {
        db.store(contact1);
        System.out.println("Stored " + contact1);

        List <Contact> contacts = db.query(Contact.class);
        System.out.println(contacts);
    }
    finally {
        db.close();
    }
}

1 ответ

Чтобы получить действительные значения, вам нужно переопределить нативный Java-метод java.lang.Object.toString() в классе Contact.

@Override
 public String toString() {
     return [insert what to return here];
}

Это позволит вам отображать реальное сообщение с информацией о каждом объекте, а не с адресом памяти.

Другие вопросы по тегам