Bem pessoal utilizo o seguinte padrão de desenvolvimento não eh muita coisa mais é +/- isso, queria entao saber como deve ser o modelo do meu projeto Utilizando UML e Iconix, como seria meu diagrama de robustez?? meu diagrama de classes??
OBS: Não utilizo nenhum framework!!!
pacote action
-AbstracAction
public abstract class AbstractAction extends HttpServlet implements Servlet{
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
executar(request,response);
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
executar(request,response);
}
abstract void executar(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException;
}
Os meus Actions herdam de AbstractAction
pacote connection
responsavel pela conexão
pacote Dto
Contem classes com apenas os atributos e seus respectivos metodos getters and setters
pacote Dao
Contem uma Classe abstrata Chamada AbstractDao
public abstract class AbstractDao {
public AbstractDao() {
super();
}
public ResultSet executeQuery(String sql) {
ResultSet rs = null;
String databaseFile = this.getClass().getClassLoader().getResource(
"br" + File.separator + "gov" + File.separator + "caixa"
+ File.separator + "salaSegura" + File.separator
+ "conf" + File.separator + "database.properties")
.getPath();
try {
Statement stmt = Conexao.getCONN(databaseFile).createStatement();
rs = stmt.executeQuery(sql);
} catch (SQLException e) {
e.printStackTrace();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return rs;
}
public void executeUpdate(String sql, HttpServletRequest request)
throws MyException {
String databaseFile = this.getClass().getClassLoader().getResource(
"br" + File.separator + "gov" + File.separator + "caixa"
+ File.separator + "salaSegura" + File.separator
+ "conf" + File.separator + "database.properties")
.getPath();
try {
AuditoriaDao auditoriaDao = new AuditoriaDao();
Statement stmt = Conexao.getCONN(databaseFile).createStatement();
stmt.executeUpdate(sql);
stmt.execute(auditoriaDao.getComandoAuditoria(sql, request));
} catch (SQLException e) {
e.printStackTrace();
throw new MyException("Erro no método executeUpdate AbstractDao");
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
e uma Interface
public interface InterfaceDao {
public void save(Object o, HttpServletRequest request) throws MyException;
public void update(Object o, HttpServletRequest request)throws MyException;
public void delete(Object o, HttpServletRequest request)throws MyException;
public Collection list()throws MyException;
public ResultSet getRSlist();
}
Daí todos os meus Dao’s irão herdar e implementar estas duas classes.
Bem ainda tenho outros pacotes, mais os mais importantes são estes descritos acima - util, myexecption e conf
Ainda Utilizo o eclipse para desenvolvimento junto com Apache e o Tomcat. As paginas são claro JSP com validações JavaScript!
Bem baseado nisso como irei modelar meus projetos utilizando alem de OO o Iconix como processo?
Ex: Pessoa seria uma classe teria que criar tambem a Classe PessoaDao, PessoaDto e PessoaAction?
Ou simplesmente modelaria meu projeto normalmente com as classes normais e no desenvolvimento ou senao
no outros diagramas como o de sequencia e de robustez criaria os outros objetos como o de controler e os daos.