Generic dao com daofactory JDBC

2 respostas
P

Posso usar genericDAO com DAOFActory usando JDBC?

2 Respostas

R

Pode.

Se você puder dar mais detalhes sobre a sua dúvida e sobre o que você tentou fazer, nós conseguimos te ajudar melhor.

Tente escrever uma pergunta detalhando o máximo que você puder. :wink:

P

tem uma daofactory

package persistencia;

public class DAOFactory {

public final static int DERBY = 1;
public final static int ORACLE = 2;

public static DAOFactory getDaoFactory(int x)
		throws ClassNotFoundException, Exception {

	if (x == DERBY) {
		return new DAOFactoryDerby();
	} else {
		return null;
	}
}

public abstract DAOUsuario getDAOUsuario() throws ClassNotFoundException,
		SQLException, Exception;

}

e outra classe :
package persistencia;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.SQLException;

/**
*

  • @author profoswaldo
    */
    public class DAOFactoryDerby extends DAOFactory {

    public static Connection con;

    public DAOFactoryDerby() throws ClassNotFoundException, SQLException {
    
    Class.forName(“org.apache.derby.jdbc.ClientDriver”);
    
    con = DriverManager.getConnection(“jdbc:derby://localhost:1527/trabalho, aluno, 123);
    

    }

    <a class="mention" href="/u/override">@Override</a>
    
    public DAOUsuario getDAOUsuario() throws Exception {
    
    return new DAOUsuarioDerby();
    
    }
    

}

public interface DAOUsuario {

void incluir(Usuario usuario) throws Exception;
void excluir(Usuario usuario) throws Exception;
void alterar(Usuario usuario) throws Exception;
Usuario consultar(Usuario usuario) throws Exception;
List<Usuario> consultar() throws Exception;

}

public class DAOUsuarioDerby implements DAOUsuario {

private Connection conexao = null;
private PreparedStatement pst = null;
private final ResultSet rs = null;

public DAOUsuarioDerby() {
    conexao = DAOFactoryDerby.con;
}


@Override
public void incluir(Usuario usuario) throws Exception {
    pst = conexao.prepareStatement("INSERT INTO TRABALHO.USUARIOS(nome, email,senha, nivel) VALUES(?,?,?,?)");
    pst.setString(1, usuario.getNome());
    pst.setString(2, usuario.getEmail());
    pst.setString(3, usuario.getSenha());
    pst.setInt(4, usuario.getNivel());
    pst.execute();
    pst.close();
}

}

queria usar esse DAOUsuarioDerby como genericDAO só que não funciona

Criado 28 de setembro de 2015
Ultima resposta 28 de set. de 2015
Respostas 2
Participantes 2