Exemplo DAO - Completo
Página 1 de 1
Exemplo DAO - Completo
FuncionarioDAO
OracleFuncionarioDAO
OracleGenericDAO
DAOFactory
Exemplo de uso
- Código:
import java.util.List;
public interface FuncionarioDAO {
public void salveFuncionario(Funcionario funcionario);
public Funcionario getFuncionarioByPK(int codigo);
public List<Funcionario> getAllFuncionarios();
}
OracleFuncionarioDAO
- Código:
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.List;
public class OracleFuncionarioDAO extends OracleGenericDAO implements FuncionarioDAO{
@Override
public List<Funcionario> getAllFuncionarios() {
return null;
}
@Override
public Funcionario getFuncionarioByPK(int codigo) {
Connection connection = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
try {
connection = getConnection();
String sql = "SELECT NOME, FUNCAO, SALARIO " +
"FROM CW_FUNCIONARIO " +
"WHERE CODIGO = ? ";
pstmt = connection.prepareStatement(sql);
pstmt.setInt(1, codigo);
rs = pstmt.executeQuery();
if (rs.next()) {
Funcionario funcionario = new Funcionario();
funcionario.setCodigo(codigo);
funcionario.setNome(rs.getString("NOME"));
funcionario.setFuncao(rs.getString("FUNCAO"));
funcionario.setSalario(rs.getDouble("SALARIO"));
return funcionario;
} else {
return null;
}
} catch (Exception e) {
e.printStackTrace();
return null;
} finally {
close(rs);
close(pstmt);
close(connection);
}
}
@Override
public void salveFuncionario(Funcionario funcionario) {
Connection connection = null;
PreparedStatement pstmt = null;
try {
connection = getConnection();
String sql = "INSERT INTO CW_FUNCIONARIO " +
"(CODIGO, NOME, FUNCAO, SALARIO) " +
"VALUES(?, ?, ?, ?)";
pstmt = connection.prepareStatement(sql);
pstmt.setInt(1, funcionario.getCodigo());
pstmt.setString(2, funcionario.getNome());
pstmt.setString(3, funcionario.getFuncao());
pstmt.setDouble(4, funcionario.getSalario());
pstmt.executeUpdate();
} catch (Exception e) {
e.printStackTrace();
} finally {
close(pstmt);
close(connection);
}
}
}
OracleGenericDAO
- Código:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class OracleGenericDAO {
protected Connection getConnection() throws SQLException {
String urlJDBC = "jdbc:oracle:thin:@server175:1531:derbades";
Connection connection = DriverManager.getConnection(urlJDBC, "cursojava", "cursojava");
return connection;
}
protected void close(ResultSet rs) {
if (rs !=null) {
try {
rs.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
protected void close(PreparedStatement pstmt) {
if (pstmt !=null) {
try {
pstmt.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
protected void close(Connection connection) {
if (connection !=null) {
try {
connection.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
DAOFactory
- Código:
public class DAOFactory {
public DAOFactory() {
}
public FuncionarioDAO getFuncionarioDAO() {
return new OracleFuncionarioDAO();
}
}
Exemplo de uso
- Código:
Funcionario funcionario = new Funcionario();
System.out.println("Digite o codigo:");
int codigo = scanner.nextInt();
funcionario.setCodigo(codigo);
System.out.println("Digite o nome:");
String nome = scanner.next();
funcionario.setNome(nome);
System.out.println("Digite a função:");
String funcao = scanner.next();
funcionario.setFuncao(funcao);
System.out.println("Digite o salario:");
double salario = scanner.nextDouble();
funcionario.setSalario(salario);
DAOFactory daoFactory = new DAOFactory();
FuncionarioDAO dao = daoFactory.getFuncionarioDAO();
dao.salveFuncionario(funcionario);
Tópicos semelhantes
» Exemplo de uso do if
» Exemplo de uso de Map
» Exemplo DAO 1
» Exemplo de sobrescrita
» Exemplo de composição
» Exemplo de uso de Map
» Exemplo DAO 1
» Exemplo de sobrescrita
» Exemplo de composição
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos
|
|