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 Zitieren
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 Zitieren
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. Zitieren
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? Zitieren
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 Zitieren
molly Geschrieben 4. Mai 2009 Autor Geschrieben 4. Mai 2009 Meinst du, dass ich in der Bean erst einmal ein Query erstellen muss? Zitieren
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 Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.