Rumah > Java > javaTutorial > Bagaimana untuk Simpan dan Muat Semula Keadaan Program Swing?

Bagaimana untuk Simpan dan Muat Semula Keadaan Program Swing?

Patricia Arquette
Lepaskan: 2024-11-15 06:00:04
asal
359 orang telah melayarinya

How to Save and Reload the State of a Swing Program?

Menyimpan dan Memuatkan Semula Keadaan Program Swing

Untuk mengekalkan dan mendapatkan semula keadaan program Swing anda, beberapa pendekatan tersedia:

API Properties:

API Properties menawarkan mekanisme penyimpanan pasangan nilai kunci. Anda boleh menyimpan dan memuatkan data dengan mudah. Walau bagaimanapun, hanya rentetan yang disokong, jadi nilai bukan rentetan memerlukan penukaran manual.

Properties properties = new Properties();
properties.setProperty("cell_data", board.getCellDataAsString());
properties.store(new FileOutputStream("game.properties"), "Game Properties");
Salin selepas log masuk

XML dan JAXB:

JAXB membolehkan anda memetakan sifat objek kepada XML dan eksport/import mereka. Walaupun lebih fleksibel daripada Properties, ia memperkenalkan kerumitan.

JAXBContext context = JAXBContext.newInstance(Board.class);
Marshaller marshaller = context.createMarshaller();
marshaller.marshal(board, new FileOutputStream("game.xml"));
Salin selepas log masuk

API Keutamaan:

API Keutamaan menyokong penyimpanan String dan nilai primitif tanpa penukaran. Ia memuatkan dan menyimpan kandungan secara automatik, tetapi lokasinya bukan di bawah kawalan anda.

Preferences prefs = Preferences.userRoot().node("minesweeper");
prefs.put("cell_data", board.getCellDataAsString());
Salin selepas log masuk

Pangkalan Data:

Pangkalan data terbenam seperti H2 atau HSQLDB menawarkan storan asas. Walau bagaimanapun, ia boleh menjadi lebih kompleks untuk disediakan dan diselenggara berbanding pilihan lain, terutamanya untuk jumlah data yang kecil.

try (Connection connection = DriverManager.getConnection("jdbc:h2:~/minesweeper")) {
  try (Statement statement = connection.createStatement()) {
    statement.execute("INSERT INTO cells (data) VALUES ('" + board.getCellDataAsString() + "')");
  }
}
Salin selepas log masuk

Pensiri Objek:

Pertimbangkan untuk menggunakan objek bersiri sebagai pilihan terakhir. Ia tidak direka bentuk untuk storan jangka panjang dan datang dengan kemungkinan isu.

try (ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("game.ser"))) {
  oos.writeObject(board);
}
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk Simpan dan Muat Semula Keadaan Program Swing?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan