Hallo,
ich überlege derzeit, wie ich innerhalb einer Web-Applikation "Einstellungen" in der Datenbank speichern kann, sodass ich von der GUI darauf zugreifen kann und diese aktivieren / deaktivieren kann.
Sowas wie hier:
Um nun nicht 1000 Properties in eine Tabelle aufzunehmen, möchte ich das dynamisch halten, sodass für jede Setting es einen Datenbankeintrag gibt.
Mir schwebt dazu folgendes Konzept vor:
Eine Datenbank - Tabelle anlegen:
ApplicationSetting
- ID
- uniqueName (bspw: "resetPassword")
- dataType (String, Integer, Double Boolean) -> Typ wird als String - Wert gespeichert...
- valueString
- valueInteger
- valueDouble
- valueBoolean
Um die verschiedenen Datentypen zu speichern, lege ich eben verschiedene Felder an für String, Double usw.
Erweitern könnte man das u.a. noch
a) mit einer XML, welche beim Start der Applikation ausgelesen wird und die Werte dann gespeichert werden
b) Weitere Datenbank - Tabelle ApplicationSettingGroup (um die Settings zu gruppieren)
Ich würde nun gerne wissen, ob das Konzept so passt oder was man besser machen könnte?
ich überlege derzeit, wie ich innerhalb einer Web-Applikation "Einstellungen" in der Datenbank speichern kann, sodass ich von der GUI darauf zugreifen kann und diese aktivieren / deaktivieren kann.
Sowas wie hier:
Um nun nicht 1000 Properties in eine Tabelle aufzunehmen, möchte ich das dynamisch halten, sodass für jede Setting es einen Datenbankeintrag gibt.
Mir schwebt dazu folgendes Konzept vor:
Eine Datenbank - Tabelle anlegen:
ApplicationSetting
- ID
- uniqueName (bspw: "resetPassword")
- dataType (String, Integer, Double Boolean) -> Typ wird als String - Wert gespeichert...
- valueString
- valueInteger
- valueDouble
- valueBoolean
Um die verschiedenen Datentypen zu speichern, lege ich eben verschiedene Felder an für String, Double usw.
Erweitern könnte man das u.a. noch
a) mit einer XML, welche beim Start der Applikation ausgelesen wird und die Werte dann gespeichert werden
b) Weitere Datenbank - Tabelle ApplicationSettingGroup (um die Settings zu gruppieren)
Ich würde nun gerne wissen, ob das Konzept so passt oder was man besser machen könnte?