Datei-Upload mit Begleitdaten im Jersey RESTful Web Service
Beim Erstellen von Mitarbeitern in einem System möchten Sie möglicherweise ein Bild mit einbinden ihre persönlichen Daten. Obwohl es möglich ist, dies mit separaten REST-Aufrufen zu erreichen, ist es effizienter, dies mit einem einzigen Aufruf zu tun. Dieser Artikel bietet eine Lösung für dieses Problem und ermöglicht Ihnen den gleichzeitigen Empfang von Datei- und Mitarbeiterdaten.
Um dies zu erreichen, ändern Sie die Java-Methode wie folgt:
@POST @Path("/upload2") @Consumes({MediaType.MULTIPART_FORM_DATA}) public Response uploadFileWithData( @FormDataParam("file") InputStream fileInputStream, @FormDataParam("file") FormDataContentDisposition contentDispositionHeader, @FormDataParam("emp") Employee emp) { // ..... business login }
Im JSON Struktur sind die Mitarbeiterdaten nun Teil der mehrteiligen Anfrage:
{ "emp": { "Name": "John", "Age": 23, "Email": "[email protected]", "Adrs": { "DoorNo": "12-A", "Street": "Street-11", "City": "Bangalore", "Country": "Karnataka" } } }
Zusätzlich Überlegungen
jsonPart.setMediaType(MediaType.APPLICATION_JSON_TYPE); Employee emp = jsonPart.getValueAs(Employee.class);
Indem Sie diese Schritte befolgen, Sie können mit Jersey erfolgreich eine Datei und die zugehörigen Mitarbeiterdaten in einem einzigen REST-Aufruf hochladen.
Das obige ist der detaillierte Inhalt vonWie lade ich Dateien und zugehörige Daten gleichzeitig in einen RESTful-Webdienst von Jersey hoch?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!