Je nach Benutzer anderes Datenbank-Schema auswählen

rogerssocke

Mitglied
Hallo Leute,

genutzter Application-Server: JBOSS 5.1
Datenbank: Postgres

ich überlege gerade für bestimmte Personengruppen unterschiedliche Datenbank-Schemata mit einer identischen Tabellenstruktur zu erstellen.

Ist es möglich bei einem Java Client mit Hilfe des InitialContext das Datenbankschema des Applicationservers zu ändern/festzulegen?

Oder benötige ich für jedes Datenbankschema ein eigenes EAR-File welches bei jeder Entity die Annotation @Table(schema="XYZ") enthält und die Clients je nach Personengruppe auf ein anderes EAR-File zugreift?
 

FArt

Top Contributor
Hallo Leute,

genutzter Application-Server: JBOSS 5.1
Datenbank: Postgres

ich überlege gerade für bestimmte Personengruppen unterschiedliche Datenbank-Schemata mit einer identischen Tabellenstruktur zu erstellen.

Ist es möglich bei einem Java Client mit Hilfe des InitialContext das Datenbankschema des Applicationservers zu ändern/festzulegen?

Oder benötige ich für jedes Datenbankschema ein eigenes EAR-File welches bei jeder Entity die Annotation @Table(schema="XYZ") enthält und die Clients je nach Personengruppe auf ein anderes EAR-File zugreift?

entity bean differen database - Google-Suche
 

rogerssocke

Mitglied
Danke für die Antwort, aber leider bringt mich dies nicht weiter.
Zumindestens habe ich nicht gefunden was ich suche.

Ich möchte je nach Client, der meine EJBs per InitialContext aufruft, festlegen können welches Datenbankschema ausgewählt wird.

Also ich hätte gerne ein EAR-File welches immer auf meine Postgres Datenbank zugreift, allerdings je nachdem was im InitialContext vom Client steht auf ein anderes Datenbankschema zugreifen.
 

FArt

Top Contributor
Dies ist eine Antwort aus obigem Link:
As far as performance issue is concerned it is quite context dependent and
one need to think about the required functionality, specific scenario and
then what is the best design pattern to use. So we can't make it a rule that
using a Session EJB in a scenario that involves multiple databases is not
appropriate and shouldn't be recommended. Hence in one scenario it might be
more efficient to make use of Session EJB but in a different scenario one
could possibly make use of simple Java data object (or some other mechanism)
for efficient database interaction.
Es gibt im Prinzip verschieden Möglichkeiten, abhängig von deinem Design und deine Bedürfnissen. In deinem Fall wäre vermutlich tatsächlich am einfachsten die Applikation mehrfach zu deployen. Aber es reicht auch die Zugriffschicht mehrfach zu deployen (Entity Beans und evtl. noch eine Schicht) und diese dynamisch an die Applikation zu binden, z.B. über Konfiguration der Businesslogikschicht und passendes Binding im JNDI, so dass die Clients über den Lookup dynamisch die passend konfigurierte Businesslogik verwendet.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
MiHimbert Wildfly Access Denied nach Delete und erneutes Schreiben Allgemeines EE 1
J JSTree in Web-App: Datenbank-Beziehungen verschwinden nach unbestimmter Zeit Allgemeines EE 4
J Missing MessageBodyWriter nach Guice-Anbindung Allgemeines EE 0
D Websocket nach Decoder Annotation nicht mehr erreichbar Allgemeines EE 0
J Mit @Schedule annotierte Methode wird nach einer Weile nicht mehr ausgeführt (JBoss AS 7.2) Allgemeines EE 0
OnDemand Methodenaufruf nach Aufgabenabschluss in Asynch-Methode Allgemeines EE 4
E Wie kann ich über einen Suchfeld in Java Server Pages nach Datenbankinhalten suchen? Allgemeines EE 11
I JBoss unheimlich langsam nach mehreren Deploys Allgemeines EE 2
L JSF f:param konvertiert 'blank' nach '+' in mailto-link Allgemeines EE 13
M JSF JSF Redirect zu Requested URL nach Login Allgemeines EE 6
Y JSF Komische Fehlermeldung nach Deployment und Serverstart Allgemeines EE 5
N Tomcat funktioniert nach shutdown/startup nicht mehr korrekt Allgemeines EE 9
JimPanse Tomcat Fehler nach redeploy Allgemeines EE 5
C WebStart Fehler nach update auf Java 1.6 Allgemeines EE 2
MQue TCP- Verbindung nach Tomcat- Start (global) starten Allgemeines EE 4
MQue RequestDispatcher nach Submit Allgemeines EE 2
A Timeout nach 30 Minuten Laufzeit einer entfernten Methode Allgemeines EE 3
V JSP BEAN Speichern von einer Zahl nach eingabe Allgemeines EE 2
G Von Java SE nach JavaEE umsteigen Allgemeines EE 31
G Probleme mit dem Klassenpfad nach dem deployment Allgemeines EE 2
F MySQL Connection Pool nach Apache Example Allgemeines EE 1
R auf der Suche nach dem Fehler,Sessions + Arrays Allgemeines EE 4
B JSF - Form. je nach checked Radio um Feld erweitern Allgemeines EE 3
G Wie Objekte von JSP nach Servlet? Allgemeines EE 4
C JSF: request nach ausführung killen? Allgemeines EE 7
B Auf Win Rechner bauen und nach Debian Tomcat deployen Allgemeines EE 4
M Tomcat automatisch neustarten nach crash Allgemeines EE 2
D action url nach der umleitung finden Allgemeines EE 21
W Session nach Browserschließung erhalten im Tomcat Allgemeines EE 4
G Strutsanwendung auf Tomcat nach Neustart langsamer. Allgemeines EE 4
A Leerzeilen in HTML-Seite, nach Erzeugen des Servlets Allgemeines EE 3
R Benutzer Statistiken Allgemeines EE 9
FINF_AW_Alex JSF JDBC - Realm - Benutzer authentifizieren Allgemeines EE 10
G Benutzer verwaltung Allgemeines EE 18
P Einem eingeloggtem Benutzer Rollen dynamisch zuweisen Allgemeines EE 5
S welche benutzer sind eingeloggt Allgemeines EE 10
D Windows Benutzer Authentifizierung Allgemeines EE 11
boxi JSF von einem Bean auf ein anderes Bean zugreifen Allgemeines EE 3
M Aus einem Servlet auf ein anderes zugreifen ? Allgemeines EE 2
J Axis, XFire, XINS oder was ganz anderes? Was benutzen? Allgemeines EE 7
M Fehlermeldung von Class an anderes Servlet und dann in JSP Allgemeines EE 5
H Von einem Servlet auf ein anderes zugreifen Allgemeines EE 4
A Anderes Servlet aufrufen Allgemeines EE 4

Ähnliche Java Themen

Neue Themen


Oben