Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.sql.*;
- /*
- * Classe utilizada para conexao com o BD, com as tabelas cliente, produto, carrinho e compra
- * BD utilizado: MySql
- */
- /**
- * @authors Gabriel Francisco, Allan Beloti, Kairon Peixoto, 4º semestre, Ciência da Computação, FMU, noturno
- * @since Classe criada em 30 de outubro de 2010
- */
- public class AcessaBDCompras extends FrameCompras {
- Connection conexao = null;
- static ResultSet rs;
- static int codCompra=0, count=0;
- int qtd, codMotoboy;
- String nomeCliente, nomeProduto, motoboy;
- float preco, total;
- static boolean chave=false;
- public AcessaBDCompras() {
- }
- //método para conexão com o banco
- public Connection getConnection() throws ClassNotFoundException, SQLException{
- Class.forName("com.mysql.jdbc.Driver");
- Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/Delivery", "root", "kcobain123");
- System.out.println("Conectado com sucesso!");
- return con;
- }
- public void verificaQtd() throws SQLException, ClassNotFoundException{
- conexao = getConnection();
- Statement consulta = conexao.createStatement();
- rs = consulta.executeQuery("SELECT COUNT(*) FROM compra");
- if(rs.next())
- count = rs.getInt("COUNT(*)");
- }
- //carrega os dados e usado mais de uma vez vai pro próximo registro
- public void carregaDadosCompra() throws ClassNotFoundException, SQLException {
- conexao = getConnection();
- Statement consulta = conexao.createStatement();
- rs = consulta.executeQuery("select cod from compra where cod>"+codCompra+"");
- if(rs.next())
- codCompra = rs.getInt("cod");
- rs = consulta.executeQuery("select distinct cliente.nome, produto.produto, produto.preco, carrinho.qtd, compra.valor, motoboy.nome from compra, cliente, produto, carrinho, motoboy where compra.motoboy = motoboy.cod and compra.cod = carrinho.cod and cliente.cod = carrinho.codCliente and produto.cod = carrinho.codProduto and compra.cod = "+codCompra+"");
- }
- //ele pega os dados do result set e joga nas variáveis
- public void pegaDados() throws SQLException{
- if(rs.next()){
- nomeCliente = rs.getString("cliente.nome");
- nomeProduto = rs.getString("produto.produto");
- preco = rs.getFloat("produto.preco");
- qtd = rs.getInt("carrinho.qtd");
- total = rs.getFloat("compra.valor");
- motoboy = rs.getString("motoboy.nome");
- }
- }
- //método usado para ir para o registro anterior
- public void regAnt() throws ClassNotFoundException, SQLException{
- conexao = getConnection();
- Statement consulta = conexao.createStatement();
- rs = consulta.executeQuery("select cod from compra where cod<"+codCompra+" order by cod desc");
- /*
- * Como eu usei o "order by desc", para fazer a consulta no Banco de dados,
- * que pega o registro de trás para frente, em fez de usar o previous(),
- * estou usando o next(), porque é como se ele fizesse o contrário.
- * Se eu não usasse o "order by desc", em vez dele ir pra o registro anterior, ele ia começar
- * do primeiro registro, e não é isso que nós queremos.
- */
- if(!rs.isAfterLast()){
- if(rs.next())
- codCompra = rs.getInt("cod");
- rs = consulta.executeQuery("select distinct cliente.nome, produto.produto, produto.preco, carrinho.qtd, compra.valor, motoboy.nome from compra, cliente, produto, carrinho, motoboy where compra.motoboy = motoboy.cod and compra.cod = carrinho.cod and cliente.cod = carrinho.codCliente and produto.cod = carrinho.codProduto and compra.cod = "+codCompra+"");
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement