Umstände:
Ich habe 2 Klassen: in einer die Connection und in der anderen die Statements. Beide sind im selben Package. Ich brauche nun die Connection um die Abfragen zu erstellen, darum habe ich die Connection-Klasse in der Statement-Klasse mit "extends" aufgerufen.
Code:
public class Statements extends DBConnection
Mein Problem ist nun, dass die Klasse mit den Statements die Connection-Klasse nicht erkennt!
ahja ich denk die frage ist nicht unbedingt ne anfängerfrage!
denn wenn ich mit DataSource arbeite muss ich ja das server.xml File editieren.
Nicht dass der Fehler am .xml File liegt, das glaube ich nicht, aber evtl. kann ich gar keine extends mit DataSource objekten machen? Was meint ihr dazu?
Nicht dass der Fehler am .xml File liegt, das glaube ich nicht, aber evtl. kann ich gar keine extends mit DataSource objekten machen? Was meint ihr dazu?
Nicht dass der Fehler am .xml File liegt, das glaube ich nicht, aber evtl. kann ich gar keine extends mit DataSource objekten machen? Was meint ihr dazu?
public final class DBConnection {
public String status = "Not Connected";
public int bar = -1;
public void init() {
try {
Context ctx = new InitialContext();
if(ctx == null) throw new Exception("Boom - No Context");
DataSource ds = (DataSource)ctx.lookup("java:comp/env/jdbc/mssql");
...
...
nun brauch ich die connection um in ner zweiten klasse die statements zu setzten. hier wird aber die connection-klasse nicht erkannt!
sorry da ist mir ein fehler unterlaufen. ich habe vor dem post die klasse zur probe noch auf final gesetzt und dann aussversehen den code mit final kopiert!
Warum willst du überhaupt eine Klasse von DbConnection ableiten? Was versprichst du dir davon?
Benutz doch einen ConnectionPool, also eine Klasse die eine bestimmte Anzahl Connections zur DB aufbaut und bei Bedarf anderen Klassen eine Connection zur Verfügung stellt.
Um von überall aus auf den Pool zugreifen zu können, wird die Klasse als Singleton implementiert. Bei der Initialiserung des ConnectionPools erstellst du eine bestimmte Anzahl an Connections, diese speicherst du in einer HashMap. Jetzt brauchst du nur noch Methoden um Connections aus dem Pool zu holen und sie wieder zurück zu geben. Jede Klasse die eine Verbindung zur DB braucht holt sich eine Conenction aus dem Pool, verwendet diese und gibt sie zurück an den ConnectionPool.