Abstrakte Factory-Pattern-Interface-Implementierung oder Klassenerweiterung

Im Moment implementiere ich ein abstraktes Factory-Muster für die Datenbankkonnektivität. Ich muss die Geschäftslogik trennen und über Code verfügen, der nicht für jeden neuen Datenbanktyp neu geschrieben werden muss, der eine Verbindung zu meiner Anwendung herstellen muss Klasse

Interface Connection{}
MySql implements Connection{}
PostgreSql implements Connection{}

So ist das Problem hier, dass jede Klasse, die die Schnittstelle implementiert, Connection die Methoden in der Schnittstelle umschreiben muss, ich würde eine Klasse benötigen, in der es allgemeine Methoden wie setStatement, executeQuery usw. gibt, aber dann müssten einige Methoden wie überschrieben werden Verbindungsmethode, die sich je nach Datenbanktyp unterscheidet,

Mein erster Gedanke ist, eine zusätzliche Klasse zwischen der Schnittstelle Connection und den Unterklassen zu haben, in der die Methoden aufbewahrt und verwendet werden, wenn sie nicht überschrieben werden, aber diese Lösung fühlt sich nicht nach dem richtigen Weg an (korrigiere mich, wenn ich falsch liege).

Interface ConnectionInterface{}
class Connection{}
MySql extends Connection{}
PostgreSql extends Connection{}

Vielen Dan

Antworten auf die Frage(2)

Ihre Antwort auf die Frage