Voy a implementar las correcciones ahora mismo, solo me surgen 2 dudas:
1 - Usar una factory ¿Te refieres al patrón de diseño?, no tengo claro donde implementarlo, de momento he creado un paquete llamado factory y he metido la siguiente clase.
Código:
public class PersonDAOFactory {
public PersonDAO createPersonDAO(){
return new PersonDAOImpl();
}
}
y quedaría algo así:
Código:
try {
PersonDAOFactory factory = new PersonDAOFactory(); // Lo dejo de prueba
PersonDAO person = factory.createPersonDAO();
// Busco el rol seller y lo añado al combobox
for (Person per : person.showPerson()) {
String seller = per.getRol();
if (seller.equals("seller")) {
jcbSeller.addItem(per.getName() + " " + per.getSurname1());
}
}
} catch (SQLException ex) {
Logger.getLogger(SalesView.class.getName()).log(Level.SEVERE, null, ex);
}
la duda es donde impemento
PersonDAOFactory factory = new PersonDAOFactory();, a la altura de constructor, es decir al principio de la clase o lo tendría que llamar cada vez que lo fuera a utilizar..
2 - Respecto a la segunda pregunta, no la expresé bien, me refería a si creo el método findPersons() en PersonDAO - PersonDAOImpl, o por el contrario creo un DAO para cada apartado de la aplicación, SalesDAO - SalesDAOImpl(este dao no esta creado) y coloco el método aquí, dejando en PersonDAO - PersonDAOImpl solo el CRUD, de momento lo tengo en PersonDAO.
PD: Estoy aprendiendo un montón con usted @Profesor_Falken.
PD: Esta es la estructura de archivos por el momento, ¿Es correcta?
Paquete View
- MainView
- SalesView
Paquete dao
- PersonDAO
- ProductDAO
Paquete dto
- Main
- Person
- Product
Paquete factory
- PersonDAOFactory
- ProductDAOFactory
Paquete impl
- PersonDAOImpl
- ProductDAOImpl
Paquete sql
- DBConnection