Tipo assim... COMO?!?!
Foi mal valinho, mas não manjo quase nada de java. Essas coisas que você está me pedindo, eu não entendo muito bem... Segue a Screen com o erro:
package Utilitarios;
import java.sql.*;
import javax.swing.*;
public class Conexao {
final private String driver="sun.jdbc.odbc.JdbcOdbcDriver"; //driver do banco
final private String url="jdbc:odbc:Agenda"; //endereço para o banco - Alias
final private String usuario = "";
final private String senha = "";
private Connection conexao; //Interface
public Statement statement; //Responsavel pelo caminho do banco.
public ResultSet resultset; //Armazena os resultados do sql.
public boolean conecta(){ //somente conexão ao banco
boolean result = true;
try{ //sempre colocar o try catch para manipular banco
Class.forName(driver);
//conexao = DriverManager.getConnection(url,usuario,senha);
conexao = DriverManager.getConnection(url,usuario,senha);
JOptionPane.showMessageDialog(null,"Conectou","Conexão",1);
}
catch(ClassNotFoundException Driver){//java exige tratamento do caminho
JOptionPane.showMessageDialog(null,"Driver não localizado " + Driver,
"Aviso do sistema",1);
result = false;
}
catch(SQLException Fonte){//java exige tratamento de sql
JOptionPane.showMessageDialog(null,"Deu erro na conexão " +
"com a fonte de dados : " + Fonte,"Aviso do sistema",1);
result = false;
}
return result;
}
public void desconecta(){
boolean result = true;
try{
conexao.close();
JOptionPane.showMessageDialog(null,"Banco de dados fechado");
result = false;
}
catch(SQLException fecha){
JOptionPane.showMessageDialog(null,"Não foi possivel fechar o banco de dados: " + fecha);
result = false;
}
}
public void executeSQL(String sql){
try{
statement = conexao.createStatement(
ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
resultset = statement.executeQuery(sql);
}
catch(SQLException sqlex)
{
JOptionPane.showMessageDialog(null,"Não foi possivel executar o "+
"comando SQL " + sqlex + "comando SQL efetuado foi" +
sql ,"Aviso do sistema",1);
}
}
}
/*
* CadAgenda.java
*
* Created on 7 de Maio de 2009, 15:37
*/
package Cadastro;
/**
*
* @author professor Jorge Maestre Carvalho
*/
import Utilitarios.Conexao;
import java.sql.SQLException;
import javax.swing.JOptionPane;
public class CadAgenda extends javax.swing.JFrame {
//Criando o objeto para a conexão.
Conexao cta_agenda;
//Pega as posições de inicio e final de movimentação.
int posicao = 0;
/** Creates new form CadAgenda */
public CadAgenda() {
initComponents();
/*Após todos os componentes criados,
* iremos iremos inicializar o objeto cta_agenda.
*/
cta_agenda = new Conexao();
//Efetuando a conexão com o banco de dados.
cta_agenda.conecta();
//Passando um comando SQL para ser executado.
cta_agenda.executeSQL("SELECT * from fones");
try{
cta_agenda.resultset.first();
mostrar();
}
catch(SQLException erro){
JOptionPane.showMessageDialog(null,"Problemas com a minha tabela \n "+
"ou não foi encontrados nenhum dados " + erro);
}
}
/** This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
*/
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
jLabel1 = new javax.swing.JLabel();
jLabel2 = new javax.swing.JLabel();
txtNome = new javax.swing.JTextField();
txtFone = new javax.swing.JTextField();
cmdSair = new javax.swing.JButton();
cmdPrimeiro = new javax.swing.JButton();
cmdAnterior = new javax.swing.JButton();
cmdProximo = new javax.swing.JButton();
cmdUltimo = new javax.swing.JButton();
jLabel3 = new javax.swing.JLabel();
jButton1 = new javax.swing.JButton();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setTitle("Agenda Telefonica Versão 1.0");
setResizable(false);
jLabel1.setFont(new java.awt.Font("Tahoma", 0, 18));
jLabel1.setText("Nome :");
jLabel1.setAutoscrolls(true);
jLabel2.setFont(new java.awt.Font("Tahoma", 0, 18));
jLabel2.setText("Fone :");
jLabel2.setAutoscrolls(true);
txtNome.setFont(new java.awt.Font("Tahoma", 0, 18)); // NOI18N
txtFone.setFont(new java.awt.Font("Tahoma", 0, 18)); // NOI18N
cmdSair.setIcon(new javax.swing.ImageIcon("E:\LPOO_Ant\Gifs\sair.GIF")); // NOI18N
cmdSair.setToolTipText("Fecha o programa");
cmdSair.setAutoscrolls(true);
cmdSair.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
cmdSairActionPerformed(evt);
}
});
cmdPrimeiro.setText("<<");
cmdPrimeiro.setToolTipText("Vai para o primeiro registro");
cmdPrimeiro.setAutoscrolls(true);
cmdPrimeiro.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
cmdPrimeiroActionPerformed(evt);
}
});
cmdAnterior.setText("<");
cmdAnterior.setToolTipText("Registro anterior");
cmdAnterior.setAutoscrolls(true);
cmdAnterior.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
cmdAnteriorActionPerformed(evt);
}
});
cmdProximo.setText(">");
cmdProximo.setToolTipText("Proximo registro");
cmdProximo.setAutoscrolls(true);
cmdProximo.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
cmdProximoActionPerformed(evt);
}
});
cmdUltimo.setText(">>");
cmdUltimo.setToolTipText("Último Registro");
cmdUltimo.setAutoscrolls(true);
cmdUltimo.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
cmdUltimoActionPerformed(evt);
}
});
jLabel3.setFont(new java.awt.Font("Arial", 1, 24));
jLabel3.setForeground(new java.awt.Color(0, 0, 255));
jLabel3.setText("Angenda Telefônica De Contatos");
jButton1.setIcon(new javax.swing.ImageIcon("E:\LPOO_Ant\Gifs\add.GIF")); // NOI18N
jButton1.setToolTipText("Incluir nome");
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton1ActionPerformed(evt);
}
});
org.jdesktop.layout.GroupLayout layout = new org.jdesktop.layout.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(layout.createSequentialGroup()
.add(62, 62, 62)
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING)
.add(cmdSair, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 64, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.add(layout.createSequentialGroup()
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(jLabel3)
.add(jLabel1)
.add(jLabel2)
.add(txtFone, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 169, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.add(txtNome, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 363, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.add(layout.createSequentialGroup()
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING, false)
.add(org.jdesktop.layout.GroupLayout.LEADING, jButton1, 0, 0, Short.MAX_VALUE)
.add(org.jdesktop.layout.GroupLayout.LEADING, cmdPrimeiro, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 68, Short.MAX_VALUE))
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(cmdAnterior, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 65, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.add(23, 23, 23)
.add(cmdProximo, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 63, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(cmdUltimo, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 64, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)))
.add(23, 23, 23)))
.addContainerGap(63, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(layout.createSequentialGroup()
.addContainerGap()
.add(jLabel3)
.add(21, 21, 21)
.add(jLabel1)
.add(15, 15, 15)
.add(txtNome, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(jLabel2)
.add(14, 14, 14)
.add(txtFone, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.add(29, 29, 29)
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
.add(cmdPrimeiro, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 58, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.add(cmdAnterior, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 56, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.add(cmdProximo, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 55, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.add(cmdUltimo, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 53, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
.add(18, 18, 18)
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(cmdSair, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 59, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.add(jButton1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 70, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
.addContainerGap(38, Short.MAX_VALUE))
);
pack();
}// </editor-fold>
private void cmdUltimoActionPerformed(java.awt.event.ActionEvent evt) {
// TODO adicione seu código de manipulação aqui:
try{
cta_agenda.resultset.last();
mostrar();
}
catch(SQLException erro){
JOptionPane.showMessageDialog(null,"Problemas com a minha tabela \n "+
"ou não foi encontrados nenhum dados " + erro);
}
}
private void cmdPrimeiroActionPerformed(java.awt.event.ActionEvent evt) {
// TODO adicione seu código de manipulação aqui:
try{
cta_agenda.resultset.first();
mostrar();
}
catch(SQLException erro){
JOptionPane.showMessageDialog(null,"Problemas com a minha tabela \n "+
"ou não foi encontrados nenhum dados " + erro);
}
}
private void cmdAnteriorActionPerformed(java.awt.event.ActionEvent evt) {
// TODO adicione seu código de manipulação aqui:
try{
cta_agenda.resultset.previous();
posicao = 1;
mostrar();
}
catch(SQLException erro){
JOptionPane.showMessageDialog(null,"Problemas com a minha tabela \n "+
"ou não foi encontrados nenhum dados " + "\n" + erro,"Aviso do sistema",1);
}
}
private void cmdProximoActionPerformed(java.awt.event.ActionEvent evt) {
// TODO adicione seu código de manipulação aqui:
try{
cta_agenda.resultset.next();
posicao = 2;
mostrar();
}
catch(SQLException erro){
JOptionPane.showMessageDialog(null,"Problemas com a minha tabela \n "+
"ou não foi encontrados nenhum dados " + "\n" + erro,"Aviso do sistema",1);
}
}
private void cmdSairActionPerformed(java.awt.event.ActionEvent evt) {
// TODO adicione seu código de manipulação aqui:
System.exit(0);
}
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
txtNome.setText("");
txtFone.setText("");
txtNome.requestFocus();
}
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new CadAgenda().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JButton cmdAnterior;
private javax.swing.JButton cmdPrimeiro;
private javax.swing.JButton cmdProximo;
private javax.swing.JButton cmdSair;
private javax.swing.JButton cmdUltimo;
private javax.swing.JButton jButton1;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JTextField txtFone;
private javax.swing.JTextField txtNome;
// End of variables declaration
public void mostrar(){
try{
txtNome.setText(cta_agenda.resultset.getString("nome"));
txtFone.setText(cta_agenda.resultset.getString("fone"));
}
catch(SQLException erro){
if (posicao == 1){
JOptionPane.showMessageDialog(null,"Estamos no início do \n "+
"Banco de dados" + "\n" +
"Não temos mais dados","Aviso do sistema INÍCIO DO ARQUIVO",1);
}
else{
JOptionPane.showMessageDialog(null,"Estamos no final \n "+
"do Banco de dados" + "\n" + "Não temos mais dados",
"Aviso do sistema FINAL DO ARQUIVO",1);
}
}
}
}