Mysql
 sql >> Database >  >> RDS >> Mysql

caricare più formati di file su un server utilizzando jsp e memorizzare il percorso nel database

Consiglio vivamente di utilizzare uno dei moduli esistenti che le persone hanno creato per la gestione del caricamento di file in più parti. Commons Fileupload è uno dei più popolari, ti suggerisco di esaminarlo (esempio di utilizzo qui ).

Il tuo codice è piuttosto disordinato e stai mescolando il lavoro con array di byte e stringhe in un modo che sicuramente creerà errori. Questo:

int boundaryLocation = file.indexOf(boundary, pos) - 4;
int startPos = ((file.substring(0, pos)).getBytes()).length;
int endPos = ((file.substring(0, boundaryLocation)).getBytes()).length;
...
fileOut.write(dataBytes, startPos, (endPos - startPos));

è particolarmente peloso. Ad ogni modo, se insisti nel farlo da solo, dovresti ripulire il tuo codice, non mescolare il lavoro con stringhe e array di byte (ricorda, un carattere in una stringa non è necessariamente solo un byte). Non lo consiglio però, a meno che questa non sia un'esperienza di apprendimento per te. In tal caso, vorrei dedicare del tempo a cercare di trovare un codice di esempio su Internet per la gestione di moduli multiparte.