Exemplo DAO (versão intermediária 2) - 10/09
Página 1 de 1
Exemplo DAO (versão intermediária 2) - 10/09
Produto.java
- Código:
package br.gov.geracaotecsc.exemplodao.dados;
public class Produto {
private int codigo;
private String nome;
private double preco;
public Produto() {
}
public Produto(int codigo, String nome, double preco) {
this.codigo = codigo;
this.nome = nome;
this.preco = preco;
}
public int getCodigo() {
return codigo;
}
public void setCodigo(int codigo) {
this.codigo = codigo;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public double getPreco() {
return preco;
}
public void setPreco(double preco) {
this.preco = preco;
}
}
- Código:
package br.gov.geracaotecsc.exemplodao.dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import br.gov.geracaotecsc.exemplodao.dados.Produto;
public class ProdutoDAO extends GenericDAO{
public void cadastreProduto(Produto produto) {
Connection connection = null;
PreparedStatement pstmt = null;
try {
connection = getConnection();
String sql = "INSERT INTO produto (codigo, nome, preco) values (?, ?, ?)";
pstmt = connection.prepareStatement(sql);
pstmt.setInt(1, produto.getCodigo());
pstmt.setString(2, produto.getNome());
pstmt.setDouble(3, produto.getPreco());
pstmt.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
} finally {
close(pstmt);
close(connection);
}
}
public List<Produto> listeTodosProdutos() {
Connection connection = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
try {
connection = getConnection();
String sql = "SELECT codigo, nome, preco FROM produto ORDER BY codigo";
pstmt = connection.prepareStatement(sql);
rs = pstmt.executeQuery();
List<Produto> lista = new ArrayList<Produto>();
while (rs.next()) {
int codigo = rs.getInt("codigo");
String nome = rs.getString("nome");
double preco = rs.getDouble("preco");
lista.add(new Produto(codigo, nome, preco));
}
return lista;
} catch (SQLException e) {
e.printStackTrace();
return null;
} finally {
close(rs);
close(pstmt);
close(connection);
}
}
}
- Código:
package br.gov.geracaotecsc.exemplodao;
import java.util.List;
import br.gov.geracaotecsc.exemplodao.dados.Produto;
import br.gov.geracaotecsc.exemplodao.dao.ProdutoDAO;
import br.gov.geracaotecsc.ui.console.GenericConsoleUI;
public class ControleProdutoApp {
private GenericConsoleUI ui;
public static void main(String[] args) {
new ControleProdutoApp().run();
}
public ControleProdutoApp() {
ui = new GenericConsoleUI();
}
public void run() {
int opcao = ui.facaPerguntaInt("O que vc quer fazer? (1-Cadastrar produto, 2-Listar todos produtos)");
if (opcao == 1) {
abrirCadastroProduto();
} else if (opcao == 2) {
abrirListagemProdutos();
} else {
System.out.println("Opcao invalida");
}
}
private void abrirListagemProdutos() {
ProdutoDAO produtoDAO = new ProdutoDAO();
List<Produto> listaProdutos = produtoDAO.listeTodosProdutos();
for (Produto prod: listaProdutos) {
System.out.println(
"Código:" + prod.getCodigo() +
"\tNome: " + prod.getNome() +
"\tPreço:" + prod.getPreco());
}
}
private void abrirCadastroProduto() {
int codigo = ui.facaPerguntaInt("Digite o codigo do produto");
String nome = ui.facaPergunta("Digite o nome do produto");
double preco = ui.facaPerguntaDouble("Digite o preco do produto");
Produto produto = new Produto(codigo, nome, preco);
ProdutoDAO produtoDAO = new ProdutoDAO();
produtoDAO.cadastreProduto(produto);
System.out.println("Produto cadastrado com sucesso");
}
}
Tópicos semelhantes
» Exemplo DAO (versão intermediária 1) - 10/09
» Exemplo DAO (versão intermediária 4, consultaPorCodigo) - 11/09
» Exemplo DAO (versão intermediária 3, DAOException) - 11/09
» Exemplo - Projeto contendo usuário-perfil (exemplo de tela com chave estrangeira) - 20/09
» Exemplo Date
» Exemplo DAO (versão intermediária 4, consultaPorCodigo) - 11/09
» Exemplo DAO (versão intermediária 3, DAOException) - 11/09
» Exemplo - Projeto contendo usuário-perfil (exemplo de tela com chave estrangeira) - 20/09
» Exemplo Date
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos