G
Guest
Gast
Hallo,
ich habe eine Klasse in NetBeans, die u.a. Temperaturdaten (temp1) an eine MySQL Datenbank sendet. Ist kein Temperatursensor vorhanden, so wird 0 angezeigt. Dies führt zu Problemen, da 0 sowohl "kein Sensor vorhanden" als auch "0°C" heißen könnte. Deshalb möchte ich diesen Fall mit einer if-Anweisung ausschließen, indem geprüft wird, ob ein Sensor vorhanden ist oder nicht und entsprechend 0 oder "null" schreiben. Dabei bekomme ich jedoch eine NullPointerException:
ich habe eine Klasse in NetBeans, die u.a. Temperaturdaten (temp1) an eine MySQL Datenbank sendet. Ist kein Temperatursensor vorhanden, so wird 0 angezeigt. Dies führt zu Problemen, da 0 sowohl "kein Sensor vorhanden" als auch "0°C" heißen könnte. Deshalb möchte ich diesen Fall mit einer if-Anweisung ausschließen, indem geprüft wird, ob ein Sensor vorhanden ist oder nicht und entsprechend 0 oder "null" schreiben. Dabei bekomme ich jedoch eine NullPointerException:
Code:
mainLoop(): java.lang.NullPointerException
java.lang.NullPointerException
at etws.MySQL.savedata(MySQL.java:19)
at etws.ETWS.mainLoop(ETWS.java:422)
at etws.ETWS.main(ETWS.java:560)
Code:
package etws;
import java.sql.*;
public class MySQL{
private static Prefs prefs;
private static String temp1, temp2, taupunkt, wrichtung, wgeschw, baro, hum, regen;
public static void savedata( WeatherCruncher cruncher )
{
temp1 = "null";
if (prefs.isTemp1DeviceAvailable()) {temp1 = cruncher.temp1Str;}
System.out.println("Schreibe Daten in MySQL Datenbank");
String treiber=null, DbUrl=null ;
treiber = "com.mysql.jdbc.Driver" ;
DbUrl = "jdbc:mysql://localhost:3306/wetterstation" ;
try {
//*** Treiber laden ***********************************
Class.forName( treiber ).newInstance();
//*** Verbindung aufnehmen: ************************
//*** Der User peter mit Kennwort mysql möcht was wissen
Connection cn = DriverManager.getConnection( DbUrl, "root", "root" );
PreparedStatement pstmt = cn.prepareStatement("INSERT INTO wetterdaten " +
"(datum, temp1, temp2, taupunkt, wrichtung, wgeschw, baro, hum, regen)" +
"VALUES (now(),"+ temp1 + "," + cruncher.temp2Str+ "," +
cruncher.dpStr + "," + cruncher.windDirection + "," +
cruncher.windSpdStr + "," + cruncher.pressStr + "," + cruncher.humStr +
"," + cruncher.rainStr + ")");
pstmt.executeUpdate();
cn.close();
} catch( Exception ex ) { System.out.println( ex ); }
}
}