Estou querendo fazer uma aplicação MVC que funcione perfeitamente em qualquer banco (Ex: SQL, Oracle, MySQL, etc) então estava lenco o livro do GoF sobre Design Patterns e vi que tal situação seria bom usar o Abstract Factory…porem tenho algumas dúvidas:
1 - Existe algo chamado Simple Factory? Qual a diferença disso para Abstracted Factory e ainda para Method Factory?
2 - Essa modelagem esta correta?
interface class IDataBase {
abstract createConnection ();
abstract closeConnection();
abstract updateDB();
abstract selectDB();
}
public class SqlServerDataBase extends IDataBase {
//implemntação concreta dos metodo no SQL Server
createConnection()
exitConnection()
updateDB(String query)
selectDB(String query)
}
public class OracleDataBase extends IDataBase {
//implemntação concreta do metodo no Oracle
createConnection()
exitConnection()
updateDB(String query)
selectDB(String query)
}
public class DataBaseFactory {
private final int SQL_SERVER = 0;
private final int ORACLE = 1;
public static IDataBase createDataBase (int sgdb) {
if (int == SQL_SERVER){
return new SqlServerDataBase();
}
if (int == ORACLE){
return new OracleDataBase();
}
}
}
Nesse modelo ai como eu faria para acoplar ao meu MVC…seria no Model?
IDatabase objDB = DataBadeFactory.createDataBase(0); //caso seja um banco SQL Server
E sobre os metodos a baixo, como fazer para que esses metods sirvam tanto para inserir um objeto Aluno, Disciplia, Curso, tendo em vista que vou usar uma JTable para manipular esses dados?
updateDB(String query) //implemntação concreta do metodo no SQL Server
selectDB(String query) //implemntação concreta do metodo no SQL Server
Grato…!

Sim e no modelo que eu fiz foi só conceitual ainda, não comecei a desenvolver nada não…é apenas a fase de estudo