Der Pool in JBoss wird in der DataSource-Konfiguration behandelt. Here ist das HowTo. Die Webanwendung müsste eine JNDI-Suche nach der Datenquelle durchführen, um die Datenbankverbindung zu erhalten, anstatt eine direkte JDBC-URL zu erstellen, und dann wird ein Pooling durchgeführt.
Transaktionen sind eine andere Geschichte, obwohl.
EDIT: Als Antwort auf Ihren Kommentar darüber, wie dieser den Code betrifft, ist es das, was es sieht aus wie:
String jndiPath = "java:DataSourceJNDIName"; //The exact prefix here has a lot to do with clustering, etc., but if you are using one JBoss instance standalone, this works.
Context ctx = new InitialContext();
DataSource ds = (DataSource) PortableRemoteObject.narrow(ctx.lookup(jndiPath), DataSource.class);
Connection c = ds.getConnection();
Technisch den PortableRemoteObject.narrow sprechen in einer JBoss nicht erforderlich ist (4.2.2 sowieso) Single-Server-Konfiguration sicher, aber es ist mehr richtige J2EE-Standard-Code, da allgemeine Anwendungsserver nicht ein Objekt des richtigen Typs nur für eine Context.lookup zurückgeben müssen.
Das oben genannte behandelt nicht die Ressourcenauslastung und Fehlerbehandlungsprobleme. Sie sollten das Context-Objekt schließen, wenn Sie damit fertig sind, und natürlich die Datenbankverbindung, obwohl JBoss Sie anschreien wird, wenn Sie vergessen, die Datenbankverbindung zu schließen und die Transaktion endet, und sie für Sie zu schließen.
Wie auch immer, dieses Connection-Objekt ist genauso nutzbar wie DriverManager.getConnection (url);
Konfigurieren von JBoss ein Teil des Deals ist, gibt es eine ganze Einige Beispiele und Tutorials online verfügbar. Was mich beschäftigt, sind die Änderungen, die möglicherweise in der Codebasis erforderlich sind. Kann jemand bitte mich auf eine Probe oder ein Tutorium verweisen, wo ich sehen kann, wie wir eine Verbindung von JBoss darasource abrufen und wie es später gehandhabt werden sollte, d. H. Die Verbindung schließen oder freigeben. Danke. –