Llamado de clase java en otra clase
Publicado por Luis Eduardo Rivera Molina (1 intervención) el 13/05/2012 00:21:47
Buenas tardes
Tengo un inconveniente, tengo una clase que me hace la coneccion a la BD de mysql y funciona perfecto. en otra clase donde llamo esta coneccion, saca error. aqui les coloco el codigo de la clase que se conecta a la base de datos y luego el codigo donde la llamo
CODIGO QUE CONECTA LA BASE DE DATOS
package com.co;
import java.sql.*;
public class ConexionBD{
static String bd = "estservicios";
static String login = "root";
static String password = "";
static String url = "jdbc:mysql://localhost/"+bd;
public void coneccionbd() throws InstantiationException, IllegalAccessException{
Connection conn = null;
try{
Class.forName("com.mysql.jdbc.Driver").newInstance();
conn = DriverManager.getConnection(url,login,password);
if (conn != null) {
System.out.println("Conexión a base de datos "+url+" ... Ok");
conn.close();
}
}
catch(SQLException ex){
System.out.println("Error 1 "+ex);
}
catch(ClassNotFoundException ex){
System.out.println("Error 2 "+ex);
}
}
public Statement createStatement() {
// TODO Auto-generated method stub
return null;
}
public PreparedStatement prepareStatement(String string) {
// TODO Auto-generated method stub
return null;
}
}
CODIGO EN OTRA CLASE QUE LLAMA A LA CONECCION
public void jButton0ActionActionPerformed(ActionEvent event) {
//************************************conecta base de datos
try{
ConexionBD conn = new ConexionBD();
conn.coneccionbd();
Statement sql = (Statement) conn.createStatement();
sql.executeQuery("LOAD DATA LOCAL INFILE 'd:/archivo.txt' INTO TABLE tbl_venta");
JOptionPane.showMessageDialog(null, "La carga de los datos de surtidores realizada con exito");
//***************************************SACA STOCK DE TANQUES
PreparedStatement pstmt = null;
ResultSet rs = null;
try{
pstmt = conn.prepareStatement("SELECT sum(cnt_gal) FROM tmp_vta_stk WHERE prod_tan = 'GASOLINA'");
rs = pstmt.executeQuery();
}catch(SQLException ex){
System.out.println("Error 4 "+ex);
}
while(rs.next()){
String tan_gas = rs.getString(1);
System.out.println(""+tan_gas);
//*************************************saca la cantidad de de stock que hay en combustible en tanque
pstmt = conn.prepareStatement("SELECT stk FROM tbl_stk_combu WHERE prd_tan = 'GASOLINA'");
rs = pstmt.executeQuery();
while(rs.next()){
String stk_tan = rs.getString(1);
System.out.println(""+stk_tan);
int y = Integer.parseInt(stk_tan);
int x = Integer.parseInt(tan_gas);
int tot_stk = (y- x);
System.out.println("total "+tot_stk);
}
}
}catch(Exception ex){
System.out.println("Error 3 "+ex); ++++++++++++++++++++
}
}
EL ERROR QUE ARROJA ES ESTO
java.lang.NullPointerException, ESTO PASA EN LA LINEA QUE TIENE LOS SIGNOS +++++++
Gracias por su colaboracion
Tengo un inconveniente, tengo una clase que me hace la coneccion a la BD de mysql y funciona perfecto. en otra clase donde llamo esta coneccion, saca error. aqui les coloco el codigo de la clase que se conecta a la base de datos y luego el codigo donde la llamo
CODIGO QUE CONECTA LA BASE DE DATOS
package com.co;
import java.sql.*;
public class ConexionBD{
static String bd = "estservicios";
static String login = "root";
static String password = "";
static String url = "jdbc:mysql://localhost/"+bd;
public void coneccionbd() throws InstantiationException, IllegalAccessException{
Connection conn = null;
try{
Class.forName("com.mysql.jdbc.Driver").newInstance();
conn = DriverManager.getConnection(url,login,password);
if (conn != null) {
System.out.println("Conexión a base de datos "+url+" ... Ok");
conn.close();
}
}
catch(SQLException ex){
System.out.println("Error 1 "+ex);
}
catch(ClassNotFoundException ex){
System.out.println("Error 2 "+ex);
}
}
public Statement createStatement() {
// TODO Auto-generated method stub
return null;
}
public PreparedStatement prepareStatement(String string) {
// TODO Auto-generated method stub
return null;
}
}
CODIGO EN OTRA CLASE QUE LLAMA A LA CONECCION
public void jButton0ActionActionPerformed(ActionEvent event) {
//************************************conecta base de datos
try{
ConexionBD conn = new ConexionBD();
conn.coneccionbd();
Statement sql = (Statement) conn.createStatement();
sql.executeQuery("LOAD DATA LOCAL INFILE 'd:/archivo.txt' INTO TABLE tbl_venta");
JOptionPane.showMessageDialog(null, "La carga de los datos de surtidores realizada con exito");
//***************************************SACA STOCK DE TANQUES
PreparedStatement pstmt = null;
ResultSet rs = null;
try{
pstmt = conn.prepareStatement("SELECT sum(cnt_gal) FROM tmp_vta_stk WHERE prod_tan = 'GASOLINA'");
rs = pstmt.executeQuery();
}catch(SQLException ex){
System.out.println("Error 4 "+ex);
}
while(rs.next()){
String tan_gas = rs.getString(1);
System.out.println(""+tan_gas);
//*************************************saca la cantidad de de stock que hay en combustible en tanque
pstmt = conn.prepareStatement("SELECT stk FROM tbl_stk_combu WHERE prd_tan = 'GASOLINA'");
rs = pstmt.executeQuery();
while(rs.next()){
String stk_tan = rs.getString(1);
System.out.println(""+stk_tan);
int y = Integer.parseInt(stk_tan);
int x = Integer.parseInt(tan_gas);
int tot_stk = (y- x);
System.out.println("total "+tot_stk);
}
}
}catch(Exception ex){
System.out.println("Error 3 "+ex); ++++++++++++++++++++
}
}
EL ERROR QUE ARROJA ES ESTO
java.lang.NullPointerException, ESTO PASA EN LA LINEA QUE TIENE LOS SIGNOS +++++++
Gracias por su colaboracion
Valora esta pregunta


0