netbeans - jsp Daten in Datenbank hinzufügen

E

emmes

Neues Mitglied
Hallo zusammen,

da auch ich gerne mal neues ausprobiere, kam ich auf die Idee mich mit der Thematik der Datenbankprogrammierung auseinanderzusetzen.
Hierfür benutze ich Netbeans IDE 8.0 und die DB wird über MYSQL verwaltet.

Nun zu meine Übung.
Ich hatte mir einen kleinen Webshop überlegt.

Der Shop verfügt über 2 Tabellen.
1. Kunde - mit Kundendaten;
2. Artikel - mit zu kaufenden Artikeln;

Das ganze soll auf einer HTML-Seite dargestellt werden.

Soweit so gut.
Beispielkunden wurden über SQL-Befehle angelegt.
Diese werden auch über folgenden Code an die Webpage übertragen:
Hinweis: Dies funktioniert.
Die Eigentliche Schwierigkeit folgt beim Hinzufügen von Artikeln.


Kunde:
<%@page import="java.sql.*"%>
<% Class.forName("com.mysql.jdbc.Driver"); %>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
    <head>
    
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title> Shopdatenbank</title>
            
    </head>
    <body>
        <h1> Shopdatenbank  </h1>
        <h2> Kunden         </h2>
        <h2>                </h2>
        
    
        <%!
        
        public class Shop {
            String URL      = "jdbc:mysql://localhost:3306/shop";
            String USERNAME = "root";
            String PASSWORD = "test";
        
            Connection connection = null;
            PreparedStatement selectShops = null;
            ResultSet resultSet = null;
            
            public Shop()   {
                
            try {
                connection = DriverManager.getConnection(URL, USERNAME, PASSWORD);
                selectShops =connection.prepareStatement(
                "SELECT NAME, STRASSE, PLZ, ORT FROM shop.Kunde"
                                );
                }   catch (SQLException e)    {
                e.printStackTrace();
                                                        }
                                        }
            
            public ResultSet getShops() {
                
            try {
            
                            resultSet = selectShops.executeQuery();
                            }   catch (SQLException e)    {
                e.printStackTrace();
                                                   }
                            return resultSet;
                                                    }   
                                }
        
        %>
        <%
        
        Shop shop = new Shop();
        ResultSet shops = shop.getShops();
        
        %>
        
        <table border="1">
            
            <tbody>
                <tr>
                    <th>Name</th>
                    <th>Strasse</th>
                    <th>PLZ</th>
                    <th>Ort</th>
                </tr>
                
            <% while (shops.next ()) { %>
                <tr>
                    <td><%= shops.getString("NAME") %></td>
                    <td><%= shops.getString("STRASSE") %></td>
                    <td><%= shops.getInt("PLZ")%></td>
                    <td><%= shops.getString("ORT")%></td>
        
                </tr>
            </tbody>

        <%                                 }
                %>
                
                
  
                <%!
        
        public class Kunde {
            String URL      = "jdbc:mysql://localhost:3306/shop";
            String USERNAME = "root";
            String PASSWORD = "test";
        
            Connection connection = null;
            PreparedStatement selectShops = null;
            ResultSet resultSet = null;
            
            public Kunde()   {
                
            try {
                connection = DriverManager.getConnection(URL, USERNAME, PASSWORD);
                selectShops =connection.prepareStatement(
                "SELECT artikelname, preis, mwst FROM shop.artikel"
                                );
                }   catch (SQLException e)    {
                e.printStackTrace();
                                                        }
                                        }
            
            public ResultSet getKunden() {
                
            try {
            
                                resultSet = selectShops.executeQuery();
                            }   catch (SQLException e)    {
                e.printStackTrace();
                                                        }
                            return resultSet;
                                                    }   
                                }
        %>
        <%
        
        Kunde kunde = new Kunde();
        ResultSet Kunden = kunde.getKunden();
        
        %>
        
              
        <table border="1">
            <thead>
                <h1>            </h1>
                <h2> Artikel    </h2>
                <h2>            </h2>
                
            </thead>
            <tbody>
                <tr>
                    <th>Artikel</th>
                    <th>Preis</th>
                    <th>MwSt</th>
                    <th>
     

                        <a href="artikel.jsp">( + )</a>
                        
                    </th>
                    
                </tr>
                
            <% while (shops.next ()) { %>
                <tr>
                    <td><%= shops.getString("artikelname") %></td>
                    <td><%= shops.getString("preis") %></td>
                    <td><%= shops.getString("mwst")%></td>
                    
          
                </tr>
            </tbody>

        <%                                 }
                %>
                
              
    </body>
</html>

Die Kundendaten werden angezeigt.
Die Tabelle zum Hinzufügen der Artikel ist außerdem vorhanden.
Folgend der Code für die Artikel und zum eigentlichen Problem.

Java:
<%@page import="java.sql.*"%>
<% Class.forName("com.mysql.jdbc.Driver"); %>

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Artikel einfügen</title>
    </head>
    <body>
        <h1>Hier können Sie Artikel zur Datenbank hinzufügen</h1>
        <%!
        
        public class Shop {
            String URL      = "jdbc:mysql://localhost:3306/shop";
            String USERNAME = "root";
            String PASSWORD = "test";
        
            Connection connection = null;
            PreparedStatement insertShops = null;
            ResultSet resultSet = null;
            
            public Shop()   {
                
            try {
                connection = DriverManager.getConnection(URL, USERNAME, PASSWORD);
                                
                insertShops = connection.prepareStatement(
                "INSERT INTO artikel (artikelname, preis, mwst)"
                                +  "VALUES (?,?,?)");
                                
                                
                }   catch (SQLException e)    {
                e.printStackTrace();
                            }
                        }
                        
                        public int setShops (String art, String pre, String mw)
                        {
                            int result = 0;
                            
                            try {
                                insertShops.setString(1, art);
                                insertShops.setString(2, pre);
                                insertShops.setString(3, mw);
                                result = insertShops.executeUpdate();
                            }
                            catch (SQLException e) {
                                e.printStackTrace();
                            }
                    
                            return result;
                                }
        }
      
        %>
        
        <%


            int result = 0;
          
            String artikelname  =       new String();
            String preis    =           new String();
            String mwst     =           new String();
            
            if (request.getParameter("art") != null) {
                artikelname = request.getParameter("art");
            }
            if (request.getParameter("pre") != null) {
                preis = request.getParameter("pre");
            }
            
            if (request.getParameter("mw") != null) {
                mwst = request.getParameter("mw");
            }
            
            Shop shop = new Shop();
            result = shop.setShops(artikelname, preis, mwst);
            
        %>
 
        <form name="form1" action="artikel.jsp" method="POST">
        
        
        
        <table border="0">
            
            <tbody>
                <tr>
                    <td>Artikelname: </td>
                    <td><input type="text" name="artikelname" value="" size="60" /></td>
                </tr>
                <tr>
                    <td>Preis: </td>
                    <td><input type="text" name="preis" value="" size="20" /></td>
                </tr>
                <tr>
                    <td>Mehrwertsteuer:</td>
                    <td><input type="text" name="mwst" value="" size="20" /></td>
                </tr>
            </tbody>
        </table>
        
        <input type="reset" value="Löschen" name="clear" />
        <input type="submit" value="Speichern" name="save" />
        
        
        </form>
    </body>
</html>


Das Einzige was der Datenbank hinzugefügt wird, ist ein leerer Eintrag. Die ID wird dank "auto_increment" erhöht.
Habe ich einen Gedankenfehler in der zeitlichen Abfolge?
Für einen Tipp wäre ich wirklich sehr dankbar.
 
F

fhoffmann

Top Contributor
Wenn dein input-Feld den Namen "artikelname" hat, heißt auch dein Parameter so.
Du musst also abfragen request.getParameter("artikelname");
 
E

emmes

Neues Mitglied
Ich weiß wie du es meinst, Danke für den Tipp.
Durch das ganze Namen-Wirrwarr ist mir der Überblick verloren gegangen.
Ich habe einiges umbenannt.

Außerdem ist mir aufgefallen, dass ich in der Weiterleitung der "Form" einen Fehler hatte.
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Netbeans 11 und Eclipse JPA 2.5 Entity wird nicht gefunden Datenbankprogrammierung 4
A SQLite jTable binding mit Netbeans Datenbankprogrammierung 11
F MySQL+ Netbeans: Datenbanken mit Automatisch generierten Entity Classes get und set Datenbankprogrammierung 2
S New Connection Wizard / NetBeans Datenbankprogrammierung 0
M Derby/JavaDB Kleine DB mit Tabelle erweitern - Integrität - Alter-Table - Netbeans ... Datenbankprogrammierung 5
S Dringend Netbeans Derby DB random() function Datenbankprogrammierung 6
M Ein mit Netbeans entwickeltes Programm dokumentieren Datenbankprogrammierung 5
P DatenBanken mit Netbeans erstellen Datenbankprogrammierung 17
GianaSisters MS SQL unter Netbeans OK - nach konvertieren Absturz Datenbankprogrammierung 6
K MySQL Verbindung funktioniert in Netbeans aber .jar funktioniert nicht Datenbankprogrammierung 5
E MySQL Treiber aus NetBeans laden Datenbankprogrammierung 13
B MSSQL und NetBeans IDE 6.8 Datenbankprogrammierung 2
E Herangehensweise Neues Projekt mit Netbeans / HSQLDB / JPA Datenbankprogrammierung 3
S Datenbank und Netbeans Datenbankprogrammierung 11
M komplettNoob-Fragen: MySQL mit NetBeans nutzen Datenbankprogrammierung 13
T Recordsets in eine JTable einlesen mit Netbeans 6.0 Datenbankprogrammierung 2
T JDBC mit Netbeans 6.0 Datenbankprogrammierung 2
R NetBeans und com.mysql.jdbc.Driver Datenbankprogrammierung 2
N Java Abfrage über GUI, Daten hinzufügen Datenbankprogrammierung 54
Kirby_Sike Vorschläge zur Verschlüsselung von Daten in der DB Datenbankprogrammierung 2
T Java Spiel Daten speichern Datenbankprogrammierung 1
L H2 Embedded DB und Gigabytes an Daten Datenbankprogrammierung 0
C Datenbank anlegen und über eine Website mit Daten füllen? Datenbankprogrammierung 19
R Wie mit zu viele Daten umgehen? Datenbankprogrammierung 2
F MySQL Wie speichere ich Daten zeitlich abhängig? Datenbankprogrammierung 4
T Oracle Normalisierung und Daten splitten Datenbankprogrammierung 1
JG12111989 DB-Daten werden falsch dargestellt Datenbankprogrammierung 7
K H2 Daten in die H2 console DB eintragen Datenbankprogrammierung 2
L SQLite Ändern der Daten in einem UNIQUE Feld Datenbankprogrammierung 1
S Daten von SQLite Datenbank nutzen Datenbankprogrammierung 5
P JSP - Daten aus 2 Tabellen in eine neue Tabelle einfügen Datenbankprogrammierung 1
L Oracle Daten von einem Server zum andere kopieren Datenbankprogrammierung 24
P Daten in eine mySQL Datenbank einfügen Datenbankprogrammierung 4
L MySQL Vergleichen von Array-Inhalt, Ausgabe gleicher Daten Datenbankprogrammierung 3
W Daten in Java intern abfragen Datenbankprogrammierung 1
G MySQL Java Problem: Nullpointer Exception obwohl Daten vorhanden sind? Datenbankprogrammierung 2
Wood14Mine Daten aus einer Datei von einem VServer auslesen Datenbankprogrammierung 1
I MySQL Datenbankstruktur angleichen - Daten behalten Datenbankprogrammierung 7
O JDBC Daten in zwei Tabellen mit zwei foreach-Schleifen einfügen (insert into) Datenbankprogrammierung 1
P LDAP: Daten eintragen funktioniert nicht Datenbankprogrammierung 7
B MySQL LogIn Daten im Code verstecken Datenbankprogrammierung 3
O mit Multi-Thread Daten aus Datenbank lesen und schreiben Datenbankprogrammierung 22
F Daten verdichten Datenbankprogrammierung 0
Z Finde den Fehler: Daten aus einer Access-Datenbank lesen Datenbankprogrammierung 12
B Daten aus DB in Word Dokument Datenbankprogrammierung 2
D Aktualisierung einer ListView mit Daten aus MySQL-DB Datenbankprogrammierung 5
D Daten posten auf RestApi (Mongodb/NoSQL) Datenbankprogrammierung 0
I Fehler bei Ausgabe der Daten aus der DB Datenbankprogrammierung 3
NicoDeluxe MySQL Daten aktualisieren Datenbankprogrammierung 6
D Daten von einem Server in eigenem Java-Programm benutzen Datenbankprogrammierung 6
M Vergleich von Daten in verschiedenen Tabellen Datenbankprogrammierung 1
S Daten aus Form in Datenbank nur einmal eintragen Datenbankprogrammierung 2
6 JBDC Daten verschlüsseln? Datenbankprogrammierung 2
F MySQL Daten ändern über Java Datenbankprogrammierung 3
G SQLite Daten aus SQLite DB in andere SQLite DB importieren Datenbankprogrammierung 4
H Grosse Menge an Daten in eine Datenbank Datenbankprogrammierung 32
M Daten nachträglich hinzufügen Datenbankprogrammierung 6
2 MySQL Daten aus einer Array auslesen und MySQL Statment erstellen. Datenbankprogrammierung 5
E Daten einer SQL-Datenbank aus Combobox in labels schreiben Datenbankprogrammierung 6
N HSQLDB Daten Auslesen Datenbankprogrammierung 3
O Viele Verbindungen-Exception bei insert Daten zur MySQL-Datenbank Datenbankprogrammierung 2
P MySql daten in leeren jtable übertragen Datenbankprogrammierung 5
SexyPenny90 SQL Daten sortieren und top 5 ausgeben Datenbankprogrammierung 7
L Hibernat will Daten nicht einfügen??? Datenbankprogrammierung 2
B MySQL DB Daten aktualisieren Datenbankprogrammierung 9
D MySQL Daten werden aus Datenbank gelesen, obwohl sie dort gar nicht angekommen sind Datenbankprogrammierung 8
Kenan89 Oracle Daten einer Tabelle in Array speichern Oracle Datenbankprogrammierung 10
L SQLite Daten werden nicht in die Tabelle eingefügt Datenbankprogrammierung 7
D Übersichtliche Zuweisung von Daten in Tabellen Datenbankprogrammierung 17
C ResultSet enthält nicht alle Daten Datenbankprogrammierung 4
A Problem mit Eintragen von Daten in eine Datenbank mittels DAO Datenbankprogrammierung 4
J Daten synchronisieren in Multi-Client-Anwendungen (Hibernate) Datenbankprogrammierung 6
S JPA: DB Schema ändern und Daten nicht verlieren - wie? Datenbankprogrammierung 5
T MySQL Select: Zusammenfassen von Daten und bilden von Durchschnitt? Datenbankprogrammierung 4
F Daten in die DB hinzufügen Datenbankprogrammierung 7
H Klasse welche Mysql Daten zurück gibt Datenbankprogrammierung 18
S JPA: Problem mit Update von Daten Datenbankprogrammierung 7
H Daten in/aus Datenbank schreiben Datenbankprogrammierung 2
M DropDownBoxen mit MySQL Daten füllen Datenbankprogrammierung 3
E MySQL Daten in die Datenbank eingeben via Java Programm Datenbankprogrammierung 3
F ORA 17410 Keine weiteren Daten aus Socket zu lesen Datenbankprogrammierung 2
B Daten aus Datenbank holen Datenbankprogrammierung 6
T Problem beim schreiben von daten Datenbankprogrammierung 4
N Daten aus Datenbank abfragen und anzeigen in der Praxis?? Datenbankprogrammierung 2
G MySQL Bekomme keine Daten. Datenbankprogrammierung 7
L CLOB-Daten werden beim Einfügen in die Datenbank geändert? Datenbankprogrammierung 5
G Daten aggregieren Datenbankprogrammierung 11
Gossi Oracle 2 Daten (Datum) vergleichen Datenbankprogrammierung 6
W MySQL Daten aus bestimmter Spalte lesen Datenbankprogrammierung 2
E MySQL Befüllen einer MySQL DB mit großen Daten Datenbankprogrammierung 6
J Doppelte Daten in Spalte, nur die erste abrufen wie? Datenbankprogrammierung 15
P Daten aus MySql Datenbank lesen??? Datenbankprogrammierung 6
J Daten vergleichen Datenbankprogrammierung 10
S Daten einer Tabelle vergleichen und ggs neuen Wert einfügen Datenbankprogrammierung 8
X Daten einer DatenbankTabelle in JTable darstellen Datenbankprogrammierung 13
T Designfrage: DB-Daten direkt oder verzögert speichern Datenbankprogrammierung 2
Dragonfire Daten aus jsp Datei in datenbank speichern Datenbankprogrammierung 15
A Daten von Webshop einlesen Datenbankprogrammierung 5
S Daten aus jTextfiled in DB schreiben - SQL Befehl Datenbankprogrammierung 2
T Daten aus DB in variable Zahl an Variablen speichern Datenbankprogrammierung 18

Ähnliche Java Themen

Anzeige

Neue Themen


Oben