Persistierung von Konfigurationsdaten in Java [] (Persistierung von Konfigurationsdaten in Java), Lektion, Seite 722546
https://www.purl.org/stefan_ram/pub/persistierung_java (Permalink) ist die kanonische URI dieser Seite.
Stefan Ram
Java-Kurs

Persistierung von Konfigurationsdaten in Java 

Main.java
public final class Main
{ final static java.util.prefs.Preferences alpha
= java.util.prefs.Preferences.userRoot().node
( "/com/example/project/alpha/version/1" );
public static void main( final java.lang.String[] args )
{ alpha.putInt( "gamma", 134644 ); }}
Main.java
public final class Main
{ final static java.util.prefs.Preferences alpha
= java.util.prefs.Preferences.userRoot().node
( "/com/example/project/alpha/version/1" );
public static void main( final java.lang.String[] args )
{ java.lang.System.out.println( alpha.getInt( "gamma", 0 ) ); }}
Main.java
public final class Main
{ final static java.util.prefs.Preferences alpha
= java.util.prefs.Preferences.userRoot().node
( "/com/example/project/alpha/version/1" ); public static void show()
{ java.lang.System.out.print( alpha.get( "string name", "default value" ) );
java.lang.System.out.println( ", " + alpha.getInt( "int name", 17 ) ); } public static void force()
{ show(); try { alpha.sync(); } /* future reads will show the values put */
catch( final java.util.prefs.BackingStoreException exception )
{ java.lang.System.err.println( exception ); } show(); try { alpha.flush(); } /* forces to store */
catch( final java.util.prefs.BackingStoreException exception )
{ java.lang.System.err.println( exception ); } show(); } public static void main( final java.lang.String[] args )
{ show(); alpha.put( "string name", "text" );
alpha.putInt( "int name", 20 ); force(); try { alpha.removeNode(); }
catch( final java.util.prefs.BackingStoreException exception )
{ java.lang.System.err.println( exception ); } force(); }}
transcript
default value, 17
text, 20
text, 20
text, 20
Exception in thread "main" java.lang.IllegalStateException: Node has been removed.
at java.util.prefs.AbstractPreferences.get(AbstractPreferences.java:283)
at Main.show(Main.java:9)
at Main.force(Main.java:13)
at Main.main(Main.java:37)

Große und kleine Buchstaben werden bei den Schlüsseln unterschieden.

Wo und wie die Paare genau gespeichert werden, hängt von der Java-Implementation ab, es ist nicht allgemein festgelegt.

Dies setzt voraus, daß jedes Programm sein eigenes Paket hat.

Die Informationen sind dort nicht besonders geschützt. Andere (Java -)Programme können sie lesen oder verändern.

Verwendung des Pakets als Pfad

final java.util.prefs.Preferences prefs
= Preferences.userNodeForPackage( this.getClass().getName() );

Quellen

http://docs.oracle.com/javase/8/docs/technotes/guides/preferences/index.html

http://docs.oracle.com/javase/8/docs/technotes/guides/preferences/overview.html

http://docs.oracle.com/javase/8/docs/technotes/guides/preferences/overview.html

http://docs.oracle.com/javase/8/docs/api/java/util/prefs/package-summary.html

http://docs.oracle.com/javase/8/docs/technotes/guides/preferences/designfaq.html

Übungsaufgaben

Schreiben Sie ein kleines Notizprogramm, mit einem Textfeld, in welchem sich der Benutzer eine Notiz machen kann.

Bei Betätigung der Eingabetaste soll die Notiz dauerhaft so abgespeichert werden, daß sie beim nächsten Programmstart wieder in dem Textfeld erscheint.

Seiteninformationen und Impressum   |   Mitteilungsformular  |   "ram@zedat.fu-berlin.de" (ohne die Anführungszeichen) ist die Netzpostadresse von Stefan Ram.   |   Eine Verbindung zur Stefan-Ram-Startseite befindet sich oben auf dieser Seite hinter dem Text "Stefan Ram".)  |   Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram. Schlüsselwörter zu dieser Seite/relevant keywords describing this page: Stefan Ram Berlin slrprd slrprd stefanramberlin spellched stefanram722546 stefan_ram:722546 Persistierung von Konfigurationsdaten in Java Stefan Ram, Berlin, and, or, near, uni, online, slrprd, slrprdqxx, slrprddoc, slrprd722546, slrprddef722546, PbclevtugFgrsnaEnz Erklärung, Beschreibung, Info, Information, Hinweis,

Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram.
https://www.purl.org/stefan_ram/pub/persistierung_java