Ladda upp filer via ett HTML-formulär är ett av de viktigaste sätten att en webbplats kan vara interaktiv . Använda programmeringsspråket Java , kan en fil laddas upp från en användares dator och lagras i en databas för framtida användning . Processen involverar ett binärt stort objekt ( BLOB ) - typ fält i databasen . De byte som från filen omvandlas från sin ursprungliga form till en BLOB typ , placeras sedan i databasen som binära data . Saker du behöver
Eclipse IDE Review, Java
Tomcat 6.0 eller högre
MySQL-databas
phpmyadmin
webbläsare
Visa fler instruktioner
Konfigurera Miljö
1
Öppna Eclipse IDE .
2
Välj " File ", " New " och " Övrigt ".
3
Välj " Web " -ikonen . När det expanderar , välj " Dynamic Web Project " och tryck
4
Type " blobexample " till " Projektnamn : " " Next . " . Fältet
5
Leta Package Explorer vy i den vänstra sidorutan .
6
Högerklicka på filen som heter " src . " Välj " Nytt " och sedan " paket . "
7
Type " klump " i " Namn : " " . Finish " fältet och tryck
Skapa databastabell
8
Använd din webbläsare för att navigera till phpMyAdmin webbplats som är konfigurerad över MySQL-servern . Efter undertecknandet i
9
, klicka på fliken som säger " SQL " eller " Utför SQL . "
10
Ange följande kommando i SQL skrivfältet . Detta kommer att skapa tabellen som används för lagring av binära data .
CREATE TABLE ' FILE_TABLE " (
' id ' bigint ( 20 ) NOT NULL auto_increment ,
' FILE_DATA ' blob ,
PRIMARY KEY ( ' id ' ) katalog
) ENGINE = InnoDB DEFAULT charset = latin1 ;
11
Kontrollera att tabellen har skapats genom att bekräfta att " FILE_TABLE " har lagts till i listan över tabeller i den högra kolumnen .
Skapa filer
12
Leta upp mappen ikon som heter " Webbinnehåll . " Högerklicka på den och välj " Nytt " och " Övrigt ".
13
Leta upp mappen i popup- fönster som heter " Web ". Välj " JSP " och tryck
14
Type " upload.jsp " i " Filnamn : " " Next . " . Fältet
15
Upprepa ovanstående steg för att skapa en annan fil som heter " page.jsp . " Addera Redigera Upload Page
16
Öppna " page.jsp " i en ny editor fönster . Detta görs genom att dubbelklicka på den i Package Explorer.
17
Klicka på koden som finns i det nyöppnade fönstret . Tryck på " Ctrl " + " A " eller " Home " + " A " för att markera allt . Radera alla som väljs
18
Skriv följande kod i den nu tomma " page.jsp " : .
< % @ Page language = " java " % > ;
ladda
formulär < /title >
< /head >
< /body>
< /html >
19
Spara dokumentet genom att välja " File " och " Spara ". Addera Redigera resultatsida
20
Open " upload.jsp " i ett nytt redigeringsfönstret .
21
Ta bort innehållet i " upload.jsp . "
22
Mata in följande kod i den nu tomma " upload.jsp " : . .
< % @ page import = " java.io. * , java.sql * , java.util * , java . text * % >
< %
int num = 0; .
String ctyp = request.getContentType ( ) ;
if ( ( ctyp = null !) && ( ctype.indexOf ( " multipart /form-data " ) > = 0 ) ) katalog
{
DataInputStream i = new DataInputStream ( request.getInputStream ( ) ) ;
int lengthofdata = request.getContentLength ( ) ;
byte bytes [ ] = new byte [ lengthofdata ] ;
int readBytes = 0 ;
int totalReadbytes = 0 ;
samtidigt ( totalReadbytes < lengthofdata ) katalog
{
byteRead = in.read ( byte , totalReadbytes , lengthofdata ),
totalReadbytes + = readBytes ,
}
String thefile = new String ( bytes ) ,
}
Connection con = null ;
PreparedStatement pState = null ;
String line = null ;
String value = null ;
/**** ********* Starta Database Configuration ********** /
String url = " jdbc : mysql ://localhost : 3306 /";
String databasename = " file_upload ";
String drivrutin = " com.mysql.jdbc.Driver ";
String uname = " root " , //ersätta med databasens användarnamn
String pword = " root " , //ersätta med databas lösenord
/************* End Database Configuration ********** /
try {
StringBuilder innehåll = new StringBuilder ( ) ;
BufferedReader input = new BufferedReader ( ny FileReader ( savefile ) ) ;
medan ( ( linje = input.readLine ( ) ) = null ) {
content.append ( linje ) ,
} !
value = = DriverManager.getConnection ( URL + databasename , uname , pword ) ;
String queryString = " INSERT INTO FILE_TABLE set FILE_DATA = ' " + värde + " , " ;
pState = con.prepareStatement ( queryString ) ;
num = pstatement.executeUpdate ( ) ;
if ( val > 0 ) katalog
{
% > har File lagts upp och införas < %
}
}
catch ( Exception e ) katalog
{ }
}
% >
< /html >
23
Spara dokumentet genom att välja " File " och " Spara ".
Skapa en Tomcat -server
24
Välj " File ", " New " och " Övrigt ".
25
Välj " Server " ikonen . När den expanderar , väljer du " Server " och tryck på " . Nästa "
26
Enter " Blob2dbServer " i " Server namn : " fältet och se till att servern miljön är Tomcat 6.0 Press . " Finish "
. Lägg Projekt och Test
27
Leta reda på " Servers " fliken längst ned i Eclipse IDE fönstret .
28
Klicka på " Servers " fliken , och kontrollera att " Blob2dbServer " listas . Dess nuvarande tillstånd bör " Stoppad . , "
29
Högerklicka " Blob2dbServer " och klicka på " Lägg till /ta bort projektet . "
30
Välj " blobexample " från alternativen . Klicka på " Add " och " Finish . "
31
Högerklicka " Blob2dbServer , " och klicka på " Start". Använd din webbläsare för att navigera till följande adress :
http://localhost:8080/BLOBEXAMPLE/upload.jsp
Ladda upp en fil och kontrollera om några fel höjs
< . br >