Olá pessoal, bom estou tendo o seguinte erro com o banco de dados.
Possuo dois codigos, um com acesso ao banco de dados e outro que faz as buscas no banco.
Buscas
[code]package operacional;
import bd.banco;
import java.io.IOException;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Date;
import javax.swing.table.DefaultTableModel;
/**
*
-
@author BEBIDAS FRUKI SA
*/
public class gera_tabela {/** Creates a new instance of gera_tabela */
public gera_tabela() {
try {
try {
banco.init();
} catch (ClassNotFoundException ex) {
ex.printStackTrace();
} catch (IOException ex) {
ex.printStackTrace();
}
conn = banco.getConnection();
stat = conn.createStatement();
} catch (SQLException ex) {
ex.printStackTrace();
}}
public static DefaultTableModel modelo(int criterio, String tipo) throws SQLException{
String[][] dados = null;dados = tabela(criterio,tipo); String[] colunas = new String []{"Codigo","Funcionário","Data","Hora","Solicitação"}; DefaultTableModel modelo = new DefaultTableModel(dados, colunas); return modelo;
}
private static String[][] tabela(int criterio,String tipo) throws SQLException{
String[][] tabela = new String[t(criterio,tipo)][6];
int i=0;ResultSet res = stat.executeQuery("SELECT * FROM "+tipo+" where estado = "+criterio); while(res.next()){ Date data = res.getDate(3); Date hora = res.getDate(4); tabela[i][0] = res.getString(1); tabela[i][1] = res.getString(2); tabela[i][2] = res.getString(3); /*SimpleDateFormat formatador = new SimpleDateFormat("dd/MM/yyyy"); String data_formatada = formatador.format(data); tabela[i][2] = data_formatada;*/ tabela[i][3] = res.getString(4); /*SimpleDateFormat formatador_hora = new SimpleDateFormat("HH:mm"); String hora_formatada = formatador_hora.format(hora); tabela[i][3] = hora_formatada;*/ tabela[i][4] = res.getString(5); tabela[i][5] = res.getString(6); i++; } return tabela;
}
private static int t(int criterio, String Tipo) throws SQLException{
int i =0;
try {
banco.init();
System.out.println("SELECT * FROM "+Tipo+" where estado = "+criterio);
ResultSet res = stat.executeQuery("SELECT * FROM "+Tipo+" where estado = "+criterio);
while(res.next()){
i++;
System.out.println(i);
}
} catch (IOException ex) {
ex.printStackTrace();
} catch (ClassNotFoundException ex) {
ex.printStackTrace();
}
return i;
}
private static Connection conn;
private static Statement stat;
}
[/code]
conexão
[code]package bd;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.Properties;
import bd.*;
/**
*
-
@author Kiko
*/
public class banco {/** Creates a new instance of banco /
public static void init()
throws IOException, ClassNotFoundException{
Properties props = new Properties();
FileInputStream in = new FileInputStream("c:/Suporte/suporte/bd.properties");
props.load(in);
/**String driver = props.getProperty("jdbc.driver");
* url = props.getProperty("jdbc.url");
* username = props.getProperty("jdbc.usuario");
* password = props.getProperty("jdbc.senha");/
String hostName, userName, password, jdbcDriver, dataBaseName, dataBasePrefix, dataBasePort;
hostName = props.getProperty("mysql.hostName");
userName = props.getProperty("mysql.userName");
password = props.getProperty("mysql.password");
jdbcDriver = props.getProperty("mysql.jdbcDriver");
dataBaseName = props.getProperty("mysql.dataBaseName");
dataBasePrefix = props.getProperty("mysql.dataBasePrefix");
dataBasePort = props.getProperty("mysql.dataBasePort");
System.out.println(jdbcDriver);
Class.forName(jdbcDriver);
String url = dataBasePrefix + hostName + ":"+dataBasePort+"/" + dataBaseName + "/";}
public static Connection getConnection()
throws SQLException{
return DriverManager.getConnection(url,username, password);
}
private static String url, username, password;
}[/code]
Ele tá me dando o seguinte erro
[quote]java.lang.NullPointerException
at operacional.gera_tabela.t(gera_tabela.java:83)
at operacional.gera_tabela.tabela(gera_tabela.java:54)
at operacional.gera_tabela.modelo(gera_tabela.java:47)
at grafica.index.jButton1ActionPerformed(index.java:607)
at grafica.index.access$000(index.java:17)
at grafica.index$1.actionPerformed(index.java:512)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1786)
at javax.swing.AbstractButton$ForwardActionEvents.actionPerformed(AbstractButton.java:1839)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:245)
at java.awt.Component.processMouseEvent(Component.java:5100)
at java.awt.Component.processEvent(Component.java:4897)
at java.awt.Container.processEvent(Container.java:1569)
at java.awt.Component.dispatchEventImpl(Component.java:3615)
at java.awt.Container.dispatchEventImpl(Container.java:1627)
at java.awt.Component.dispatchEvent(Component.java:3477)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:3483)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3198)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3128)
at java.awt.Container.dispatchEventImpl(Container.java:1613)
at java.awt.Window.dispatchEventImpl(Window.java:1606)
at java.awt.Component.dispatchEvent(Component.java:3477)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:480)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:145)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:137)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:100)
[/quote]
Alguem sabe como eu resolvo esse erro???