Usando o access como banco de dados

3 respostas
DANIEL35
Olá amigos. Preciso me conectar a um banco de dados que poderá ser o access mesmo. O código que preciso está pronto, falta o caminho para a conexão. Como faço isto? O que deve de passar de comandos para poder salvar minhas informações de alunos, na tabela aluno, criada no access? Vejam o código:
import javax.swing.JLabel;
import javax.swing.JFrame;
import javax.swing.JTextField;
import javax.swing.JButton;
import javax.swing.JPanel;
import javax.swing.JCheckBoxMenuItem;
import javax.swing.JComboBox;
import javax.swing.JOptionPane;
import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.event.*;

public class CadastroAluno extends JFrame{
    private JButton b1,  b2,  b3;
    private JLabel l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, l11, l12, l13, l14, l15, l16, l17, l18;
    private JTextField c1, c2, c3, c4, c5, c6, c7, c8, c10, c11, c12, c16, c17, c18;
    private TratarBotoesTelaAluno tba;
    private JComboBox combo, combo_2, combo_3, combo_4;
		
	public CadastroAluno() {
		setTitle("CADASTRO DE ALUNOS");			
	    JPanel p1 = new JPanel();     
        p1.setLayout(new FlowLayout(FlowLayout.LEFT));       
		JPanel p2 = new JPanel();     
        p2.setLayout(new FlowLayout ()); 
        p1.setBackground(Color.LIGHT_GRAY); 
        p2.setBackground(Color.BLACK);         
        
        JCheckBoxMenuItem ca = new JCheckBoxMenuItem ("mensalidade paga ");
         ca.addItemListener(new ItemListener() {
            public void itemStateChanged(ItemEvent e) {
             JCheckBoxMenuItem ca= (JCheckBoxMenuItem)e.getSource();
               if(ca.isSelected())
                  System.out.println(ca.getText() + "sim");
               else
                  System.out.println(ca.getText() + "nao");   
            }
        });
        
        String modalidades[] = {"MUSCULAÇÃO","NATAÇÃO","DANÇAS","LUTAS", "YOGA", "GINÁSTICA", "PILATES"};
    	combo = new JComboBox(modalidades);
   	 	combo.setBackground(Color.white);
    	combo.setForeground(Color.red);
    	combo.addItemListener(new ItemListener(){
      	public void itemStateChanged(ItemEvent ie){
        String str = (String)combo.getSelectedItem();
      }
    });
        
        String pagamentos[] = {"MENSAL","TRIMESTRAL","SEMESTRAL"};
    	combo_2 = new JComboBox(pagamentos);
   	 	combo_2.setBackground(Color.white);
    	combo_2.setForeground(Color.red);
    	combo_2.addItemListener(new ItemListener(){
      	public void itemStateChanged(ItemEvent ie){
        String str = (String)combo_2.getSelectedItem();
      }
    });
    
    	String uf[] = {"AC","AL","AP","AM","BA","CE","DF","ES","GO","MA","MT","MS","MG","PA","PB","PR","PE","PI","RR","RO","RJ","RN","RS","SC","SP","SE","TO"};
    	combo_3 = new JComboBox(uf);
   	 	combo_3.setBackground(Color.white);
    	combo_3.setForeground(Color.red);
    	combo_3.addItemListener(new ItemListener(){
      	public void itemStateChanged(ItemEvent ie){
        String str = (String)combo_3.getSelectedItem();
      }
    });
    
       String status[] = {"ATIVO","INATIVO"};
    	combo_4 = new JComboBox(status);
   	 	combo_4.setBackground(Color.white);
    	combo_4.setForeground(Color.red);
    	combo_4.addItemListener(new ItemListener(){
      	public void itemStateChanged(ItemEvent ie){
        String str = (String)combo_4.getSelectedItem();
      }
    });
    	
    	b1 = new JButton("Novo");
    	b2 = new JButton("Salvar");
    	b3 = new JButton("Limpar");    	
        l1 = new JLabel ("Matrícula nº: ");
    	l2 = new JLabel ("Nome: ");
    	l3 = new JLabel ("RG: ");
    	l4 = new JLabel ("Endereço: ");
    	l5 = new JLabel ("nº: ");
    	l6 = new JLabel ("Bairro: ");
    	l7 = new JLabel ("complemento: ");
    	l8 = new JLabel ("CEP: ");
    	l9 = new JLabel ("Estado: ");
    	l10 = new JLabel("Profissão: ");
    	l11 = new JLabel ("Telefone: ");
    	l12 = new JLabel ("Telefone cel: ");
    	l13 = new JLabel ("Modalidade: ");
    	l14 = new JLabel ("Pagamento: ");
    	l15 = new JLabel ("Status do aluno: ");
    	l16 = new JLabel ("data da matrícula:");
    	l17 = new JLabel ("data do cancelamento ou desitência das atividades na academia:");
    	l18 = new JLabel ("Reponsável por menor de idade:");    	    	    	
    	c1 = new JTextField (5);
    	c2 = new JTextField (35);
    	c3 = new JTextField (10);
    	c4 = new JTextField (33);
    	c5 = new JTextField (5);
    	c6 = new JTextField (10);
    	c7 = new JTextField (8); 
    	c8 = new JTextField (9);
    	c10 = new JTextField (23);
    	c11 = new JTextField (10);
    	c12 = new JTextField (10);     	
    	c16	= new JTextField (10);
    	c17 = new JTextField (10);
    	c18 = new JTextField (30);
    	
    	JTextField [] vetTF = { c1, c2, c3, c4, c5, c6, c7, c8, c10, c11, c12, c16, c17, c18};
    	
    	p1.add(l1);
    	p1.add(c1);
    	p1.add(l2);
    	p1.add(c2);
    	p1.add(l3);
    	p1.add(c3);
    	p1.add(l4);
    	p1.add(c4);
    	p1.add(l5);
    	p1.add(c5);
    	p1.add(l6);
    	p1.add(c6);
    	p1.add(l7);
    	p1.add(c7);
    	p1.add(l8);
    	p1.add(c8);
    	p1.add(ca);
    	p1.add(l9);
    	p1.add(combo_3);
    	p1.add(l10);
    	p1.add(c10);
    	p1.add(l11);
    	p1.add(c11);
    	p1.add(l12);
    	p1.add(c12);
   		p1.add(l13);
    	p1.add(combo);
    	p1.add(l14);
    	p1.add(combo_2);
    	p1.add(l15);
    	p1.add(combo_4);
    	p1.add(l16);
    	p1.add(c16);
    	p1.add(l17);
    	p1.add(c17);
    	p1.add(l18);
    	p1.add(c18);
  
    	p1.add(p2);

    	p2.add(b1);
    	p2.add(b2);
    	p2.add(b3);
    	b1.setForeground(Color.blue);
    	b2.setForeground(Color.blue);
    	b3.setForeground(Color.red);
    	
    	tba = new TratarBotoesTelaAluno(b1,b2,b3, vetTF); 
    	b1.addActionListener(tba);
		b2.addActionListener(tba);
		b3.addActionListener(tba);

		this.setContentPane(p1); 
		setSize(610,350);
		setResizable(false);
		setLocationRelativeTo(null);
	}
	class TratarBotoesTelaAluno implements ActionListener{
	private JButton b1, b2, b3;
	private JTextField [] vetC;
	
	public TratarBotoesTelaAluno(JButton ba, JButton bb, JButton bc, JTextField [] vetCampos){
		b1 = ba;
		b2 = bb;
		b3 = bc;	
		vetC = vetCampos;
	}	
	 public void actionPerformed(ActionEvent acao){    
        if(acao.getSource() == b1) { 
        System.out.println("NOVO ABERTO"); 
        for(JTextField campo : vetC)
                		campo.setText("");   
        JOptionPane.showMessageDialog(null,"OK, NOVO ABERTO");              
        } else {    
            if(acao.getSource() == b2) {            
                 System.out.println("SALVANDO..."); 
                 
                 //salvar na Tabela alunos   
                 
                 
            JOptionPane.showMessageDialog(null,"OK, SALVO COM SUCESSO");                           
            } else {          	    
                if(acao.getSource() == b3) {               	            	 
                    System.out.println("LIMPO!!");    
                	for(JTextField campo : vetC)
                		campo.setText("");
                		JOptionPane.showMessageDialog(null,"OK, LIMPO COM SUCESSO");        
                		
                        }else{
                   }                
                }
              }
            }
          }
          
}

3 Respostas

F

Cara, acho q esse tutorial vai te ajudar… tem o passo-a-passo completo
http://www.plugmasters.com.br/sys/materias/857/1/Aplica%E7%F5es-Java-com-conex%E3o-a-Banco-de-Dados-Access—Parte-1

DANIEL35
Correto, mais depois que eu conectar o banco ao meu código, quando clicar no botão salvar, os dados irão direto para a tabela do access? Devo de adaptar esse código de exemplo do tutorial dentro da minha classe tratador de botões? Veja o código:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
 
// imports necessário para a conexão
public class LoadDriver {
 Connection connection;
//instância do objeto de conexão
 public LoadDriver() {
     try {
     	 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); // O sun.jdbc.odbc.JdbcOdbcDriver significa que será usado um banco access

             String url = "jdbc:odbc:cadastro";// esta string carrega o nome da fonte de dados

             connection = DriverManager.getConnection(url,"","");// aqui é efetuada conexão passando?se a fonte de dados e o login e senha do banco, que neste caso não existem.
JOptionPane.showmessageDialog(null, ?Conexão estabelecida?); // é exibida uma mensagem informando que a conexão foi efetuada     
     } 
     catch ( ClassNotFoundException cnfex ) {
       System.err.println("Falha ao carregar o JDBC/ODBC driver.");
       System.exit(0);

       }

         catch (SQLException ex) {
             System.out.println("SQLException: " + ex.getMessage());
             System.out.println("SQLState: " + ex.getSQLState());
             System.out.println("VendorError: " + ex.getErrorCode());
         } 
 }//construtor
 public void shutDown()
 {// este método cancela a conexão
         try {
         connection.close();
         }
         catch ( SQLException sqlex ) {
          System.err.println( "Não foi possível desconectar" );        
         }        

  } 
 public Connection getConn(){// este método retorna a conexão
  return connection;
 }
}
//Em seguida vamos criar a classe main.
public class Main {
         public static void main(String[] args) {
                   LoadDriver ld = new LoadDriver();         
         }
}
F

Cara, para esses dados serem salvos direto no banco de dados você tem que ter instruções em SQL, algo como:

INSERT INTO Pagamentos(Codigo, Tipo) VALUES (1, 'MENSAL');

Você tem isso já?

Criado 24 de maio de 2010
Ultima resposta 24 de mai. de 2010
Respostas 3
Participantes 2