扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
CREATE TABLE [table_name] ( NAME VARCHAR2(256) UNIQUE NOT NULL, MIME_TYPE VARCHAR2(128), DOC_SIZE NUMBER, DAD_CHARSET VARCHAR2(128), LAST_UPDATED DATE, CONTENT_TYPE VARCHAR2(128), [content_column_name] [content_column_type] [ , [content_column_name] [content_column_type]] ); |
NAME VARCHAR(128) UNIQUE NOT NULL, MIME_TYPE VARCHAR(128), DOC_SIZE NUMBER, DAD_CHARSET VARCHAR(128), LAST_UPDATED DATE, CONTENT_TYPE VARCHAR(128), CONTENT LONG RAW, BLOB_CONTENT BLOB ; |
CREATE OR REPLACE PROCEDURE "ZYFILEUP"."IN_FILE" is begin htp.prn(' <html> <head> <title>File upload</title> </head> <body bgcolor="#C0C0C0"> <form enctype="multipart/form-data" action="/pls/upfile/write_infos" method="POST"> <p><b><font size="5" color="#800080">指定上载文件</font></b></p> <hr> <p> <b>标题:<textarea rows="3" name="filetitle" cols="100" style="background-color: #008080; color: #FFFFFF"></textarea> <br> <b>类别:<input type="text" name="filesort" size="130" style="background-color: #008080; color: #FFFFFF"> <br> <b>作者:<input type="text" name="author" size="130" style="background-color: #008080; color: #FFFFFF"> <br> <b>小类:<input type="text" name="localsort" size="130" style="background-color: #008080; color: #FFFFFF"> <br> <b>摘要:<textarea rows="5" name="abstract" cols="130" style="background-color: #008080; color: #FFFFFF"></textarea> <br> <b>文章1:<input type="file" name="up_file" size="110" style="background-color: #008080; color: #FFFFFF"> <br> <b>文章2:<input type="file" name="up_file" size="110" style="background-color: #008080; color: #FFFFFF"> <br> <b>文章3:<input type="file" name="up_file" size="110" style="background-color: #008080; color: #FFFFFF"> <br> <b>文章4:<input type="file" name="up_file" size="110" style="background-color: #008080; color: #FFFFFF"> <br> </b></b></b></b></b></b></b></b></b></b> </p><hr><p><b> <line> <input type="submit" value="提交"> <input type="reset" value="全部重写"> </p> </form> </body> </html> '); end; |
CREATE OR REPLACE PROCEDURE "ZYFILEUP"."WRITE_INFOS" ( filetitle in varchar2, up_file in owa.vc_arr, filesort in varchar2, author in varchar2, abstract in varchar2, localsort in varchar2 ) is i number:=1; begin htp.htmlopen; htp.headopen; htp.title('File Uploaded'); htp.headclose; htp.bodyopen; htp.header(1, 'Upload Status'); while true loop begin htp.prn('Uploaded '|| up_file(i) ||' successfully !'); htp.prn('<br>'); htp.prn('<a href="/pls/upfile/downfile?upfilename='); htp.prn(utl_url.escape(up_file(i),true,'GBK')); htp.prn('" target="_blank">Open this file !</a>'); htp.prn('<br>'); INSERT INTO "ZYFILEUP"."FILE_TABLE" values(filetitle,up_file(i),filesort,author,sysdate(),abstract,localsort); commit; i:=i+1; exception when no_data_found then exit; end; end loop; htp.line; htp.print('Uploaded successfully !'); htp.bodyclose; htp.htmlclose; end; |
CREATE OR REPLACE PROCEDURE "ZYFILEUP"."DOWNFILE" (upfilename in varchar2) is mimetype varchar2(100); myblob blob; begin select mime_type,blob_content into mimetype,myblob from zyfileup.content_table where name = upfilename; owa_util.mime_header(mimetype, true); sys.wpg_docload.download_file(myblob); end; |
<%@ taglib uri="http://xmlns.oracle.com/j2ee/jsp/tld/ojsp/fileaccess.tld" prefix="fileaccess" %> <%@ page language="java" import="java.io.*" contentType="text/html" %> <html> <head> <meta http-equiv="Content-Type" content="text/HTML;charset=gb2312"> <title>jdbc upload and download blob</title> </head> <body> <fileaccess:httpUploadForm formsAction="up_file.jsp" maxFiles="5" fileNameSize="100" maxFileNameSize="150" submitButtonText="send"> </fileaccess:httpUploadForm> </body> </html> |
<%@ taglib uri="http://xmlns.oracle.com/j2ee/jsp/tld/ojsp/sqltaglib.tld" prefix="database" %> <%@ taglib uri="http://xmlns.oracle.com/j2ee/jsp/tld/ojsp/fileaccess.tld" prefix="fileaccess" %> <%@ page language="java" contentType="text/html; charset=gb2312"%> <html> <head> <meta http-equiv="Content-Type" content="text/HTML;charset=gb2312"> <title>jdbc upload and download blob</title> </head> <body> <database:dbOpen user="zy" password="zy" URL="jdbc:oracle:thin:@db92:1521:cf92" commitOnClose="true"> <fileaccess:httpUpload destination="zy_blob" destinationType="database" table="blob_table"> </fileaccess:httpUpload> </database:dbOpen> Done! <a href="dn_file.jsp">下载!</a> </body></html> |
<%@ taglib uri="http://xmlns.oracle.com/j2ee/jsp/tld/ojsp/fileaccess.tld" prefix="fileaccess" %> <%@ taglib uri="http://xmlns.oracle.com/j2ee/jsp/tld/ojsp/sqltaglib.tld" prefix="database" %> <%@ page contentType="text/html;charset=GBK"%> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=GBK"> </head> <body> <database:dbOpen user="zy" password="zy" URL="jdbc:oracle:thin:@db92:1521:cf92"> <fileaccess:httpDownload source="*" servletPath="/" sourceType="database" table="blob_table"> </fileaccess:httpDownload> </database:dbOpen> Download done! </body> </html> |
<%@ page session="true" language="java" %> <html> <head> <meta http-equiv="Content-Type" content="text/HTML;charset=gb2312"> <title>jdbc upload and download blob</title> </head> <body> <FORM action="blob_w_stream.jsp" method="POST"> <p>文件 File to upload:<INPUT type="file" name="up_file"><br> <p><INPUT type="submit"> </FORM> </body> </html> |
<%@ page session="true" language="java" contentType="text/html; charset=gb2312"%> <%@ page import="java.sql.*"%> <%@ page import="java.io.*"%> <%@ page import="oracle.jdbc.driver.*" %> <%@ page import="oracle.sql.*" %> <html> <head> <meta http-equiv="Content-Type" content="text/HTML;charset=gb2312"> <title>jdbc upload and download blob</title> </head> <body> <% String uploadfile=request.getParameter("up_file"); //Input form don't have ENCTYPE="multipart/form-data" clause,else input //file name will NULL!Get file name from input form. File binaryFile = new File(uploadfile); Reader char_stream = clobtext.getCharacterStream(); char [] char_array = new char [length]; int chars_read = char_stream.read (char_array, 0, length); out.println(char_array); out.println(); out.write(); Inputstream asciiChar_stream = clobtext.getAsciiStream(); byte[] asciiChar_array = new byte[length]; int asciiChar_read = asciiChar_stream.read(asciiChar_array,0,length); //Or File binaryFile = new File("c:\\cf\\a.doc"); point to c:\cf\a.doc. FileInputStream instream = new FileInputStream(binaryFile); %> <p>file name is :<%=uploadfile%> <% Class.forName("oracle.jdbc.OracleDriver").newInstance(); String connStr="jdbc:oracle:thin:@db92:1521:cf92"; String user="zy"; String password="zy"; Connection conn = DriverManager.getConnection(connStr,user,password); conn.setAutoCommit(false); Statement stmt=conn.createStatement(); stmt.execute("UPDATE ZY.BLOB_TABLE SET DATA = EMPTY_BLOB() WHERE FILENAME='Concepts.pdf'"); conn.commit(); //must null the blob data column,else if size of inserting file less than //existing blob file,then new insert file format error occur!New blob file don't //overwrite old blob column data! String cmd = "SELECT DATA FROM ZY.BLOB_TABLE WHERE FILENAME='Concepts.pdf' for update"; ResultSet rset = stmt.executeQuery(cmd); BLOB blob; rset.next();//must.else occur error "don't call ResultSet.next()" blob = ((OracleResultSet)rset).getBLOB(1); //must explicit!dont locate in logical block.for example,locate in IF...ITEN. OutputStream outstream = blob.getBinaryOutputStream(); int size = blob.getBufferSize(); %> <p>buffer size is :<%=size%> <% byte[] buffer = new byte[102400]; //Or direct 102400 instead of variable size! //Performance tips!size=24396. int length = -1; while ((length = instream.read(buffer)) != -1) outstream.write(buffer, 0, length); instream.close(); outstream.close(); conn.commit();//must explicit commit!If BFILE,then auto commit. conn.close(); %> <p>Upload file is down! </body> </html> |
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。