Uso do mysql em uma aplicação

11 respostas
Djheison

Iae galera
Sou iniciante no uso de banco…

Quem pode me ajudar??
Estou fazendo um trabalho de Facul que é um Sistema que controla estoque e vendas de um estabelecimento.
Criei as classes necessárias, entre elas, a classe de conexão.

A minha dúvida no momento é:

quanto a inserção, consulta, alteração de dados, etc através dos métodos.
Já que a instância para conexão está na classe Conexao.

Segue abaixo parte do código:

package Cadastro;
import java.sql.*;
import javax.swing.JOptionPane;

public class Conexao 
{
	public static void main(String args[]) //throws ClassNotFoundException
	{
		String url = "jdbc:mysql://localhost:3306/db_sce";
		String user = "root";
		String pass = "root";
		
		try
		{
		      Class.forName("com.mysql.jdbc.Driver");
//		      JOptionPane.showMessageDialog(null,"Conexão realizada com sucesso");
		      Connection conn = DriverManager.getConnection(url, user, pass);
		
                                      //devo criar a instância para usar os comandos SQL agora, 
                                      //ou apenas quando eu for utilizá-los?
                                      Statement stmt = conn.createStatement();		

		}
		catch(ClassNotFoundException e)
		{
			 JOptionPane.showMessageDialog(null,"Classe não encontrada");
		}
		catch(SQLException e)
		{
			System.out.println("Problemas com o BD "+ e);
		}
		
		
		
	}
	
	
}


package Cadastro;

public class CestaCompras 
{
	Produto produto[];
	String data;
	
	public void setSalvar(Produto produto)
	{
		//faz o que tem que fazer
	}
	
	public void setExcluir(Produto produto)
	{
		//faz o que tem que fazer
	}
	
	public void setInsereProduto(Produto produto)
	{
		//insere produto da lista de compras
	}
	
	public void setRemoveProduto(Produto produto)
	{
		//exclui produto da lista de compras
	}
	
	public void getCalculaTotal()
	{
		//retorna o valor total da compra
	}
	

}

Não sei como interagir (consultar, inserir, alterar,excluir) com o mysql usando métodos.

Aguardo ajuda e desde já muito obrigado.

11 Respostas

T

Você sabe pelo menos um pouquinho só de SQL? O que é um INSERT, UPDATE, SELECT, DELETE? Se não souber nem esse pouquinho só é mais difícil de explicar.

G

Boa tarde, quando vc for realizar as operações no BD, vc cria uma instancia da sua classe Conexao.
Mas antes, altera o método dela para Conectar() e tira o main…
certo?

flw.

Djheison

sei sim…
é que já uso o PHP e pra cada arquivo é preciso criar uma conexão.

E como no java o programa é “rodado” todo no main rolou dúvida…

Ajuda aê.

vlw

wbdsjunior

o ideal é criar uma classe DAO. veja como nessa apostila.

e se você não conhece SQL, veja esse tutorial aqui.

abraço.

Djheison

wbdsjunior

Eu criei uma classe DAO (Conexao)

Só preciso saber como escrever um método que por exemplo, insere dados no banco, e esse método
será chamado no main. Como funciona isso. Pode me dar um exemplo a a partir das classes que enviei?

Djheison

Gujuser…

O que você quis dizer com:

“altera o método dela para Conectar() e tira o main”??
Pode me dar um exemplo??

Lavieri

como ja trabalhou com isso em PHP antes, aconselho esquecer todo o trabalho sujo de progamar com SQL puro... já pensou em usar algum framework ? tipo Hibernate ??

seu trabalho todo vai ser como mapear suas Tabelas em Classes, ou seja, como criar Objetos que espelhem seu banco de dados... para isso exitem algumas anotações...

feito isso.. fica tudo muito simples... bastaria comando simples como

public static void main(String ... args) {
    Session session = HibernateUtils.getSession();
    
    //aqui estou supondo q vc crie uma cesta de compra, e adcione os itens no carrinho
    
    session.save(cestaDeCompras);
}

o session.save... iria refletir no banco de dados...

janjan

Acredito que ele quis dizer que é pra voce trocar o nome Main que recebe um array de Strings
para um simples método

public void conecta(){

}

G

Acredito que ele quis dizer que é pra voce trocar o nome Main que recebe um array de Strings
para um simples método

public void conecta(){

}


Isso aí. :slight_smile:

Vc pode fazer assim, segue um exemplo de uma conexão e um insert.

public Connection conectar() {
		try{
			Class.forName(JDBC_DRIVER);
			conexao = DriverManager.getConnection(DATABASE_URL,"user","passw");
			return conexao;
		}catch (Exception e) {
			System.out.println(e.getMessage());
			return null;
		}
	}
	
	/**
	 * <b>Descrição:</b> Método responsável pela inclusão de um item no banco.
	 */
	public void inserir(String nomeProd, String quant, Double valor_unitario, String codigo) {
		try {
			stm = conexao.createStatement();
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		String queryInsert = "INSERT INTO tb_produtos (nome, quantidade, valor_unitario, codigo) values ('"+nomeProd+"',"+quant+","+valor_unitario+","+codigo+")";
		try {
			stm.executeUpdate(queryInsert);
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		finally {
			this.fecharConexao(conexao);			
		}
	}

flw.

Djheison

blz gujuser

agora deu pra ter uma idéia, vou fazer isso

vlw

V

Oi pessoal, um colega me mandou um codigo para login e carrinho de compras, a duvida é: Gostaria de saber
em qual lugar eu coloco estes arquivos??? Tenho que criar um pacote para inserir eles dentro??? Estes 3 arquivos
vieram juntos numa pasta chamada libDB. É porque eu sou novo no JAVA.Ahh estou utilizando o netbeans.

Database.jsp


<%@ page import="java.sql.*" %>

<%
String DRIVER  = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
String URL     = "jdbc:microsoft:sqlserver://localhost:1433";
String USUARIO = "root";
String SENHA   = "rodrigo";
%>



GetConnection.jsp

<%@ page import="java.sql.*" %>

<%
String DRIVER  = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
String URL     = "jdbc:microsoft:sqlserver://localhost:1433";
String USUARIO = "root";
String SENHA   = "rodrigo";
%>




LoadDriver.jsp
<%@ include file="Database.jsp" %>

<%
try {
  Class.forName( DRIVER );
} catch ( ClassNotFoundException cnfe ) {
  String msg = "Driver JDBC não encontrado : " + cnfe.getMessage();
  throw new Exception(msg);
}
%>

Os meus outros arquivos estão tudo ok, somente estes tres que vieram juntos dentro de uma pasta
chamada libDB que eu não estou sabendo onde iseri-los. Se alguem puder dar uma força aí.

Obrigado.

Criado 1 de abril de 2009
Ultima resposta 22 de abr. de 2009
Respostas 11
Participantes 7