molly Geschrieben 4. Mai 2009 Geschrieben 4. Mai 2009 Hallo, ich bin ziemlich neu im Java-Umfeld und bin jetzt gerade dabei, einen Bildupload zu programmieren. Kann mir vielleicht jemand sagen, wie genau ich das schreiben muss, dass beim Anklicken des Buttons auch wirklich etwas in der MySQL-Datenbank gespeichert wird? Vielen Dank, Molly
kingofbrain Geschrieben 4. Mai 2009 Geschrieben 4. Mai 2009 Servus, Welcher Button, welches System (EJB3 reicht als Aussage nicht, weil es dort keine Buttons gibt), was gibt es schon und was genau geht nicht wie erwartet? Bei Deiner Frage kann alles oder nichts gemeint sein. Peter
molly Geschrieben 4. Mai 2009 Autor Geschrieben 4. Mai 2009 Also ich arbeite mit JSP und JSF. Da ich in dem Bereich noch ziemlich neu bin, weiß ich nicht, wie man das Programmieren muss, dass die Datenbank erreicht wird. Um genauer zu sein, geht es bei mir darum, ein Bild hochladen und in der Datenbank speichern zu können.
molly Geschrieben 4. Mai 2009 Autor Geschrieben 4. Mai 2009 <form action="spielerprofil.jsp" enctype="multipart/form-data" method="POST"> <label for="file">Bild:</label> <input id="fileupload" type="file" name="fileupload" /> <input type="submit" value="Speichern" /> </form> Habe den Upload bis jetzt nur so. Aber so weiß das System ja nicht, dass ich das auch in der Datenbank haben möchte.. Muss ich dass in einer Funktion machen? Oder reicht da ein Befehl?
kingofbrain Geschrieben 4. Mai 2009 Geschrieben 4. Mai 2009 Servus, weder noch. Du brauchst auf der Serverseite jemanden (ein Servlet), der den Request vom Client entgegen nimmt und aus dem Request die hochgeladene Datei herausliest. Hier gibt es von Apache entsprechende Klassen ("Apache Fileupload" bei Google). Dann hast Du eine Menge an Bytes, die der Inhalt der Datei sind. Die musst Du jetzt in Deine Datenbank schieben. Hier kommt es darauf an, mit welcher Technologie Du arbeitest (EJB3 und JPA, JDO, Hibernate, JDBC, ...). Dort ist es einfach ein ablegen der Daten in einem BLOB Feld. Mein Tipp: schau mal, wie Du den Datenstrom aus dem Request extrahierst und kümmer Dich erst dann um die Speicherung desselben. Peter
molly Geschrieben 4. Mai 2009 Autor Geschrieben 4. Mai 2009 Meinst du, dass ich in der Bean erst einmal ein Query erstellen muss?
kingofbrain Geschrieben 4. Mai 2009 Geschrieben 4. Mai 2009 Ich meine, Du solltest erst mal die binären Daten aus dem Request lesen (s.o.). Danach musst Du keine Query erstellen (ich gehe jetzt einfach mal von JPA aus, nachdem Du nichts dazu sagst), sondern Du musst Deinem JPA POJO (oder der EJB3 Persistence Bean) eine Eigenschaft data vom Typ byte[] verpassen und aus dem Service, der die Bean persistiert (evtl. eine EJB3 Session Bean) ein entsprechend befülltes POJO übergeben. Aber wichtiger: setz Dich mit den Grundlagen von EJB3 und JPA auseinander, das hört sich sehr nach rumgewurschtel und ausprobieren an. Und dafür sind Enterprise Technologien in der Regel zu komplex. Peter
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden