Come caricare file BLOB a un thread Servlet database

April 6

Come caricare file BLOB a un thread Servlet database


Caricamento di file attraverso un modulo HTML è uno dei principali modi in cui un sito web può essere interattivo. Usando il linguaggio di programmazione Java, un file può essere caricato dal computer di un utente e memorizzati in un database per un utilizzo futuro. Il processo prevede un binario campo di tipo large object (BLOB) nel database. I byte dal file vengono convertiti dalla loro forma originale in un tipo BLOB, poi messo nel database come dati binari.

istruzione

Impostazione Ambiente

1 Aprire Eclipse IDE.

2 Selezionare "File", "Nuovo" e "Altro".

3 Selezionare l'icona "Web". Una volta si espande, selezionare "Progetto Web dinamica" e premere "Avanti".

4 Tipo "blobexample" in "Nome del progetto:" il campo.

5 Individuare la vista Package Explorer nella barra laterale di sinistra.

6 Fare clic sul file denominato "src". Selezionare "Nuovo" e quindi "Pacchetto".

7 Tipo "blob" in "Nome:" ". Fine" campo e premere

Crea tabella di database

8 Utilizzare il browser Internet per navigare nel sito phpmyadmin che è configurato sul server MySQL.

9 Dopo l'accesso, fai clic sulla scheda che dice "SQL" o "Esegui SQL."

10 Immettere il seguente comando nella casella di immissione SQL. Ciò crea la tabella utilizzata per memorizzare i dati binari.

CREATE TABLE 'FILE_TABLE' (

bigint 'id' (20) auto_increment NOT NULL,

blob 'FILE_DATA',

PRIMARY KEY ( 'id')

) ENGINE = InnoDB DI DEFAULT CHARSET = latin1;

11 Verificare che la tabella è stata creata confermando che "FILE_TABLE" è stato aggiunto alla lista di tabelle nella colonna di destra.

creazione di file

12 Individuare l'icona cartella denominata "WebContent." Pulsante destro del mouse su di esso e selezionare "Nuovo" e "Altro".

13 Individuare la cartella nella finestra pop-up chiamato "Web". Selezionare "JSP" e premere "Avanti".

14 Tipo "upload.jsp" in "Nome file:" campo.

15 Ripetere i passaggi precedenti per creare un altro file denominato "page.jsp."

Modifica Carica Pagina

16 Apri "page.jsp" in una nuova finestra di editor. Questo viene fatto con un doppio clic su di esso nella finestra Package Explorer.

17 Fare clic sul codice trovato nella finestra appena aperta. Premere il tasto "Ctrl" + "A" o "Casa" + "A" per selezionare tutto. Eliminare tutto ciò che è stato selezionato.

18 Inserire il seguente codice nella "page.jsp" l'ormai vuoto:

<% @ Lingua page = "java"%>

<Html>

<Head>

<Title> modulo di upload </ title>

</ Head>

<Body>

<Form enctype = "multipart / form-data" action = "upload.jsp" metodo = post>

<Input name = tipo "file" = "file">

<Input type = "submit" value = "Invia file">

</ Form>

</ Body>

</ Html>

19 Salvare il documento selezionando "File" e "Salva".

Modifica Pagina Risultati

20 Apri "upload.jsp" in una nuova finestra di editor.

21 Eliminare il contenuto di "upload.jsp."

22 Inserire il seguente codice nella "upload.jsp" l'ormai vuoto:

<% @ Page import =

"java.io., Java.sql., Java.util., Java.text.%>

<Html>

<%

int num = 0;

String = ctype request.getContentType ();

if ((ctype! = null) && (ctype.indexOf ( "multipart / form-data")> = 0))

{

DataInputStream a = new DataInputStream (request.getInputStream ());

int lengthofdata = request.getContentLength ();

bytes byte [] = new byte [lengthofdata];

int readBytes = 0;

int totalReadbytes = 0;

mentre (totalReadbytes <lengthofdata)

{

byteRead = in.read (byte, totalReadbytes, lengthofdata);

totalReadbytes + = readBytes;

}

String thefile = new String (byte);

}

Collegamento con = null;

PreparedStatement pstate = null;

Linea String = null;

String value = null;

/ * **** Inizio Configuration Database ** /

String url = "jdbc: mysql: // localhost: 3306 /";

String nomedatabase = "file_upload";

autista String = "com.mysql.jdbc.Driver";

String uname = "root"; // Sostituire il nome utente del database

String pword = "root"; // Sostituirlo con password del database

/ * **** Fine Configuration Database ** /

provare{

contenuti StringBuilder = new StringBuilder ();

BufferedReader ingresso = new BufferedReader (nuovo FileReader (saveFile));

while ((linea = input.readLine ())! = null) {

content.append (linea);

}

value = contents.toString ();

System.out.println ( "Valore:" value +);

Class.forName ( "com.mysql.jdbc.Driver");

con = DriverManager.getConnection (URL + databasename, uname, pword);

String queryString = "INSERT INTO FILE_TABLE impostato FILE_DATA = '" + Valore + ";";

pstate = con.prepareStatement (queryString);

num = pstatement.executeUpdate ();

if (val> 0)

{

%> File è stato caricato ed inserita <%

}

}

catch (Exception e)

{}

}

%>

</ Html>

23 Salvare il documento selezionando "File" e "Salva".

Creare un server Tomcat

24 Selezionare "File", "Nuovo" e "Altro".

25 Selezionare l'icona "server". Una volta si espande, selezionare "Server" e premere "Avanti".

26 Inserire "Blob2dbServer" in "Nome del server:" il campo, e assicurarsi che l'ambiente server è Tomcat 6.0. Premere il tasto "Fine".

Aggiungi progetto e test

27 Individuare la scheda "Server" nella parte inferiore della finestra IDE Eclipse.

28 Fare clic sulla scheda "Server", e verificare che "Blob2dbServer" è elencato. Il suo stato attuale deve essere "fermato".

29 Right-click "Blob2dbServer," e fare clic su "Aggiungi / Rimuovi progetto".

30 Selezionare "blobexample" tra le opzioni. Fai clic su "Aggiungi" e "Fine".

31 Right-click "Blob2dbServer," e fare clic su "Start". Utilizzare il browser Internet per navigare al seguente indirizzo:

http: // localhost: 8080 / BLOBEXAMPLE / upload.jsp

Carica un file e verificare se eventuali errori vengono generati.

Consigli e avvertenze

  • Assicurarsi che ogni riga di codice Java termina con un punto e virgola.
  • Assicurarsi che il codice è privo di errori logici, programmatiche e tipografici.
  • Per ulteriore assistenza, cercare l'aiuto di un programmatore professionista.
  • Se gli errori si presentano in qualsiasi momento durante questo processo, in modo che Tomcat, phpMyAdmin, MySQL ed Eclipse siano configurati correttamente. Diversi piloti sono necessari per il collegamento tra Eclipse e MySQL.

Articoli Correlati