C'è questa classe principale
e ci sono diversi servizi (che usano la connessione db per recuperare i dati)
Questi servizi sono inizializzati nella classe principale le proprietà db sono ottenute dal file delle proprietà e quindi
dbconnection viene aperto chiamando un metodo dbOpen () scritto nella classe principale e l'oggetto di connessione risultante viene impostato sugli oggetti di servizio eseguendo l'iterazione attraverso l'elenco di servizi e chiamando il metodo setConnection sul servizio
note: that the services are instantiated in the main class and the main class is not a superclass for services.
Devo anche menzionare che esiste questo scenario di recycle db connection
di cui solo la classe principale è a conoscenza.
/** connects to DB, optionally recycling existing connection),
* throws RuntimeException if unable to connect */
private void connectDb(boolean recycle) {
try {
if (recycle) {
log.status( log.getSB().append("Recycling DB Connection") );
closeDb();
}
openDb();
for ( int i = 0 ; i < service.length ; i++ )
{
service[i].setConnection(db);
}
}
Uno dei servizi deve utilizzare un altro database, qual è il miglior modello di progettazione da utilizzare?