ERLEDIGT
NEIN
NEIN
ANTWORTEN
7
7
ZUGRIFFE
313
313
EMPFEHLEN
-
Hallo zusammen,
Ich habe eine aufgabe bekommen, die den Datenaustausch per Downloadlink ermöglichen soll. Ich hab mir hier ein paar punkte rausgeschrieben die wichtig sind. Leider habe ich keine Ahnung wie ich das umsetzen soll. Wäre nett wenn mir jemand tipps zu den einzelnen punkten geben kann
• Dieser Link darf keinerlei Informationen über die Datei enthalten.
• Dieser Link soll eine ID enthalten, welche nur für diese Datei gilt und nicht durch einfaches Ändern (Hoch bzw. Runterzählen) der ID zu einer anderen Datei führen.
• Jede Datei, welche bereitgestellt wird beinhaltet seine eigenen Logging-Informationen
o Wer/Welcher Rechner hat die Datei zur Verfügung gestellt.
o Wann wurde die Datei zur Verfügung gestellt.
o Für welchen Kunden wird die Datei zur Verfügung gestellt.
o Eventuelle Bemerkungen für die Datei sind zu speichern.
o Von welchem Rechner und wann wurde die Datei downgeloadet.
o Die Logging-Informationen für eine Datei sollen online einzeln abrufbar sein.
• Die Logging-Informationen für alle Dateien sollen auch in einer für das Programm eigenen Logdatei ausgegeben werden.
-
01.03.10 12:36 #2
Ich würde einfach an den Dateinamen eine Zufallszahl anhängen und daraus einen Hashbilden (MD5 oder was auch immer). Diesen Hash würde ich dann als ID nutzen.
Dann solltest du in einer Datenbank alle Nötigen Informationen hinterlegen die für dein Berechtigungskonzept nötig sind.
Ich würde vorschlagen:
Tabelle 1 (Dateien):
- ID (der generierte Hashwert)
- Speicherort der Datei auf dem Server
- Uploaddatum
- Id des Users der die Dateihochgeladen hat
- Bemerkung
- ggf noch einen künstlichen Schlüssel.
Tabelle 2 (User).
- name
- passwort (ggf auch als hashablegen)
- ggf noch einen künstlichen Schlüssel
Tabelle 3 (Berechtigung)
- ID oder name des Users
- ID oder künstlichen Schlüssel der Datei
Tabelle 4 (Downloads)
- ID oder name des Users
- id oder schlüssel der Datei
- Downloaddatum
Damit solltest du alles abbilden können was für deine Anwendung nätig ist.Wenn mein Beitrag dir geholfen hat, würde ich mich sehr über eine positive Bewertung oder ein Danke freuen
Gruß Johannes
::: Homepage :::
-
Danke für die gute antwort aber ich soll das nicht in einer Datenbank machen.
-
01.03.10 13:47 #4
Du kannst die Informationen natürlich auch in Java Objekten halten.
Erstelle für jede Tabelle eine eigene Klasse.
Anstelle der Schlüssel dann natürlich direkt das Objekt und nicht den String als schlüssel halten.
Dabei hast du dann aber allerdings das Problem, dass beim Beenden der Software alle Daten verloren gehen. Wenn das verhindert werden soll, könntet du die Objekte welche dei Daten halten serialisieren und so auf der Festplatte abelegen.
Eine weitere andere Möglichkeit wäre sonst die Daten in eine CSV-Datei zu schreiben und so Filebasiert die Daten zu halten.Wenn mein Beitrag dir geholfen hat, würde ich mich sehr über eine positive Bewertung oder ein Danke freuen
Gruß Johannes
::: Homepage :::
-
Ok danke ich werde das dann mit einer CSV datei machen.
Kansnt du mir vlt mal ein beispiel geben wie das mit dem hash funktioniert. Hab noch net so viel AhnungIch würde einfach an den Dateinamen eine Zufallszahl anhängen und daraus einen Hashbilden (MD5 oder was auch immer). Diesen Hash würde ich dann als ID nutzen.
-
01.03.10 14:38 #6
Hier mal ein kleines Beispiel:
Code java:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
package test; import java.security.MessageDigest; import java.util.Random; /** * * @author Kleeschulte * @since 01.03.2010 */ public class Hash { public static void main(String[] args) { // Instanz der eigenen Klasse anlegen Hash test = new Hash(); // Den Parameter Dateiname solltest du später dann mit dem // entsprechenden Namen füllen String dateiname = "Dateiname der Datei"; // Die Klasse Radom liefer der die Zufallszahlen Random random = new Random(); int zufallsZahl = random.nextInt(Integer.MAX_VALUE); // Erstellen des Hashwertes String hash = test.erzeugeHash(dateiname + zufallsZahl); // Ausgabe System.out.println("Dateiname: " + dateiname); System.out.println("Zufallszahl: " + zufallsZahl); System.out.println("Hash: " + hash); } /** * Diese Methode generiert einen MD5-Hash des übergeben Strings * @param eingabe * Original String von dem der Hashwert gebildet werden soll * @return Hashwert des Übergeben Strings */ public String erzeugeHash(String eingabe) { try { MessageDigest md = MessageDigest.getInstance("MD5"); md.reset(); md.update(eingabe.getBytes()); byte[] result = md.digest(); StringBuffer hexString = new StringBuffer(); for (int i = 0; i < result.length; i++) { hexString.append(Integer.toHexString(0xFF & result[i])); } return hexString.toString(); } catch (Exception e) { System.out.println("Fehler bei Hashgenerierung"); e.printStackTrace(); } return null; } }
Geändert von Johannes7146 (01.03.10 um 14:46 Uhr)
Wenn mein Beitrag dir geholfen hat, würde ich mich sehr über eine positive Bewertung oder ein Danke freuen
Gruß Johannes
::: Homepage :::
-
Danke für deine Hilfe werd jetzt einfach mal ein bissel rumprobieren
-
01.03.10 14:46 #8
Kein Thema.

LGWenn mein Beitrag dir geholfen hat, würde ich mich sehr über eine positive Bewertung oder ein Danke freuen
Gruß Johannes
::: Homepage :::
Ähnliche Themen
-
JSF Applikation innerhalb einer JSF Applikation
Von Chefkoch333 im Forum Enterprise Java (JEE, J2EE, Spring & Co.)Antworten: 0Letzter Beitrag: 12.10.07, 13:21 -
xml zum Datenaustausch
Von buschke im Forum VisualStudio & MFCAntworten: 2Letzter Beitrag: 13.06.07, 18:16 -
Datenaustausch zu Microsoft CRM?
Von heiko263 im Forum .NET CaféAntworten: 3Letzter Beitrag: 01.09.05, 13:20 -
JavaScript - PHP - Datenaustausch
Von dennisnowack im Forum Javascript & AjaxAntworten: 3Letzter Beitrag: 03.08.05, 10:13 -
JSP - Java prg datenaustausch
Von kjk im Forum Enterprise Java (JEE, J2EE, Spring & Co.)Antworten: 2Letzter Beitrag: 25.02.05, 18:22





Zitieren
Login




