CommunicationLinkError - NullPointer Exception

MurderItachi

Mitglied
Hey Leute, bin gerade dabei ein SQl Insert Statement zu machen, doch Irgendwas ach ich falsch. Muss ich die Serveradresse umformulieren?

Java:
package test;

import java.sql.BatchUpdateException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;

import com.mysql.jdbc.PreparedStatement;

public class test1 {
    public String scan_result= "haus";
    public String price="maus";
       public static String url= "jdbc:mysql://sql4.freesqldatabase.com:3306";
        public static String user= "******";
        public static String pw="******";

        public static String scan_rs;
        public static String price_rs;

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Connection con = null;     
         try {
                Class.forName("com.mysql.jdbc.Driver");
            } catch (ClassNotFoundException e) {
                // Bl�d: Treiber konnte nicht geladen werden.
                e.printStackTrace();
            }
            try {
                con = DriverManager.getConnection(url, user, pw);
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            try {
                // create a Statement from the connection
            //    Statement statement = con.createStatement();

                // insert the data
                //statement.executeUpdate("INSERT INTO barcode VALUES (13846, 12,23)");
         
               //("INSERT INTO barcode VALUES (" +"'"+ scan_rs + "'" + ", " + "'" + price_rs + "'" + ")");
           
                PreparedStatement stmt = (PreparedStatement) con.prepareStatement("INSERT INTO table_name(email, pass) VALUES (?, ?)");
                stmt.setString(1, scan_rs);
                stmt.setString(2, price_rs);
                stmt.executeUpdate();
            } catch (SQLException e) { System.out.println("fehler2");}

            try
            {
                con.close();
            }
            catch(SQLException e)
            {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
    }
}
 

Anhänge

  • error.jpg
    2,4 MB · Aufrufe: 27
Zuletzt bearbeitet von einem Moderator:
K

kneitzel

Gast
Die Punkte, die ich sehe:
a) Wie schon gesagt sollte man User / Passwort nicht mit posten
b) Wieso man Text als Bild (in diesem Fall den Fehler) hochlädt und dabei dann wichtige Dinge abschneidet kann ich nicht verstehen. Da sieht man eine Fehlerbeschreibung und schneidet die ab ... "Can't get" was? Da steht ja, was er nicht hat und was ihm fehlt.
c) Was mir im Code aufgefallen ist: Du gibst keinerlei Datenbank an. Das würde ich normalerweise erwarten. Also noch ein /Datenbankname an die URL ran. (Ist nicht zwingend erforderlich, aber evtl. ist dies ja schon die Lösung.

Konrad
 

MurderItachi

Mitglied
Also das verbinduungsproblem lag an dem Fehlenden Datenbanknamen.Den hab ich jetzt Ergänzt. Jetzt spuckt er mir in der Konsole fehler2 aus, was bedeutet, dass im Statement etwas falsch sein muss. Sieht da jemand was?
 
K

kneitzel

Gast
Wenn Du uns noch die Fehler wissen lassen würdest. Das würde uns das Leben sehr erleichtern und wir müssten nicht unsere Glaskugeln bemühen.

Konrad
 
K

kneitzel

Gast
Ach ja - scan_rs und price_rs werden von Dir nicht gesetzt und sind daher null! Das könnte ein Problem sein je nachdem, wie die Tabelle aufgebaut wurde.

Konrad
 
K

kneitzel

Gast
Super, dass es jetzt funktioniert.

Aber ein paar Punkte möchte ich noch erwähnen:
Das Passwort von Deinem User hast Du hoffentlich bereits geändert? Zumindest den Code scheinst Du noch nicht geändert zu haben!

Und da ich es in Deinen Kommentaren gesehen habe: NIEMALS baut man ein SQL Befehl über das Zusammenfügen von Strings auf. Das ist ein absolutes NO GO.
- Wenn der User Einfluss auf den Inhalt der Variablen hat, sind ggf. SQL Injection Angriffe möglich.
- Es kann zu Problemen bei der Übertragung der Daten geben. So ist z.B. nicht eindeutig, was für ein Wert die folgende Zeichenkette hat: 1,234. (Je nach Einstellung der Datenbank könnte die Datenbank in dem , entweder den Trenner für die Nachkommastellen sehen oder eben ein Tausender-Trennzeichen.) Bei der Übermittlung von anderen Datentypen ist es noch viel kritischer wie z.B. von einem Datum.
==> Also immer so wie Du es gemacht hast mit dem PreparedStatement!
- Und bei catch: Nimm da immer etwas sinnvolles rein. Leere Catch Blöcke oder ein "println("Fehler2")" sind nichts sinnvolles. Also wenigstens ein e.printStackTrace(); sollte doch immer drin sein. Von dieser Regel mag es auch durchaus Ausnahmen geben, aber diese sind wirklich sehr selten. In diesem Fall hat es wohl dafür gesorgt, dass Du keine aussagekräftige Fehlermeldung hattest.

Konrad
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
G MySQL Java Problem: Nullpointer Exception obwohl Daten vorhanden sind? Datenbankprogrammierung 2
I Nullpointer bei einfacher Daba query Datenbankprogrammierung 12
J [JPA][EclipseLink] NullPointer bei begin() Datenbankprogrammierung 14
S ResultSet einer Datenbankabfrage - Nullpointer Exception Datenbankprogrammierung 13
J Nullpointer Exception bei Zugriff auf Datenbank Datenbankprogrammierung 13
-MacNuke- Hibernate @Embeddable NullPointer Datenbankprogrammierung 2
A Nullpointer Datenbankprogrammierung 7
KOKASS Exception bei Datenbankconnect Datenbankprogrammierung 9
Kirby.exe SQL-Exception: Column not found Datenbankprogrammierung 6
S MySQL hibernate exception: illegal state exception : entityManagerFactory is closed Datenbankprogrammierung 5
G PostgreSQL Nach Monaten auf einmal ClassNotFound-Exception Datenbankprogrammierung 3
K JPA Projekt Exception Datenbankprogrammierung 7
C jpa, exception Predeployment of PersistenceUnit failed Datenbankprogrammierung 1
T MongoDB: Morphia REST 505 Exception Tomcat Datenbankprogrammierung 2
M SQL-Exception trotz funktionierendem SELECT Datenbankprogrammierung 4
N JDBC: rollback() bei Exception geht nicht!? Datenbankprogrammierung 1
M SQL Exception Datenbankprogrammierung 6
L Probleme mit DriverManager.getConnection(..) - Endlosschleife, Java Absturz, Keine Exception Datenbankprogrammierung 4
D Hibernate SaveOrUpdate Exception Datenbankprogrammierung 2
E MySQL Hibernate mit JaxWS führt zu LazyInitialization Exception Datenbankprogrammierung 8
E PostgreSQL Exception too ...many clients already bei DB-Abfrage Datenbankprogrammierung 14
T java sql exception getDate() Datenbankprogrammierung 2
O Viele Verbindungen-Exception bei insert Daten zur MySQL-Datenbank Datenbankprogrammierung 2
E Sql Exception Datenbankprogrammierung 14
M NestedTransaction- Exception in Hibernate Datenbankprogrammierung 15
F Derby/JavaDB SQL-Exception...Aber wieso!? :/ Datenbankprogrammierung 2
T Exception ResultSet Datenbankprogrammierung 7
Paristick MSSQL - JDBC Exception beim Registrieren Datenbankprogrammierung 5
S Null Pointer exception statement Datenbankprogrammierung 8
G JDBC Exception Datenbankprogrammierung 3
F Derby/JavaDB Exception - Cannot accept Null Value (help) Datenbankprogrammierung 10
G Stored Procedure Exception Handling Datenbankprogrammierung 3
C SQL Exception auf Unique überprüfen Datenbankprogrammierung 5
B Hibernate+JPA Exception in persistence.xml Datenbankprogrammierung 5
L SQL Exception Problem Datenbankprogrammierung 7
M hilfe zur einer Exception Datenbankprogrammierung 2
A MySQL Anbindung - Exception Handling Datenbankprogrammierung 2
R SQL Exception: Cursor position not valid Datenbankprogrammierung 7
O Oracle 11g wirft bei 90 % der installation eine Exception ? Datenbankprogrammierung 5
R Warum kommt eine Exception bei instanceof ? Datenbankprogrammierung 4
B SQL Exception Datenbankprogrammierung 9
E Datenbankverbindung Java MySQL Exception Datenbankprogrammierung 10
N Class not found Exception Datenbankprogrammierung 2
A Exception in thread "AWT-EventQueue-0" java.lang.N Datenbankprogrammierung 4
M SQL Exception bei LIMIT Datenbankprogrammierung 11
megachucky Problem mit: SQL Exception Before start of result set Datenbankprogrammierung 2
W updateRow() schmeißt eine Exception, weil schreibgeschützt Datenbankprogrammierung 6
M Sql Anfrage wirft Exception Datenbankprogrammierung 5
6 Communications link failure due to underlying exception Datenbankprogrammierung 10
R SQL Exception "Weiterleiten der Egebnissmenge" Datenbankprogrammierung 15
märliprinz Exception in thread "main" java.lang.OutOfMemoryEr Datenbankprogrammierung 9
S Java SQL-Exception bei Zugriff auf MSAccess Datenbankprogrammierung 2
K Exception bei Verbindungsaufbau Oracle Datenbank Datenbankprogrammierung 13
L "desc tablename" liefert SQL Exception mit execute Datenbankprogrammierung 6
M SQL Exception Datenbankprogrammierung 3
M Problem mit dem ActionListener und SQL Exception Datenbankprogrammierung 6
D Exception bei ResultSet.moveToInsertRow Datenbankprogrammierung 6
EagleEye problem mit exception Datenbankprogrammierung 2
L UPDATE löst Exception aus Datenbankprogrammierung 6
V Exception beim Speichern von eingegebenen Daten in Tabelle Datenbankprogrammierung 2
G ich bekomm immer die exception grrrr Datenbankprogrammierung 3
D Unklare SQL Exception Datenbankprogrammierung 3

Ähnliche Java Themen


Oben