File with COS

xiaoxiao2021-03-06  49

Implement file upload in JSP, a lot of available libraries, such as the famous JSPSMART SMARTupload, Struts is also available. I said COS, it is O'Reilly, O'Reilly book is very 8 wrong, this uploaded component is great, the most important thing is that it is Open Source.

1. Download the latest COS package (

Http://www.servlets.com/cos/index.html, join your ClassPath

2. Write a JSP that needs to upload files. For convenience, I use a simple HTM file. In this page, we will allow users to upload 3 files at a time.

/upload.htm///

[PRE]

"http://www.w3.org/tr/html4/loose.dtd">

No title document </ Title></p> <p></ hEAD></p> <p><body></p> <p><! - EncType's value is very important, upload.jsp is the JSP -> of the uploaded.</p> <p><form name = "form1" method = "post" enctype = "multipart / form-data" action = "upload.jsp"></p> <p><p></p> <p><Input name = "file1" type = "file"></p> <p></ p></p> <p><p></p> <p><Input Name = "file2" type = "file"></p> <p></ p></p> <p><p> <input name = "file3" type = "file"></p> <p></ p></p> <p><p></p> <p><Input Type = "Submit" name = "Submit" Value = "Upload"></p> <p></ p></p> <p></ form></p> <p></ body></p> <p></ html> [/ pre]</p> <p>3. In C: / Redefinalize a directory C: / Upload to store uploaded files.</p> <p>4. Write a JSP or servlet to achieve upload, I am using a UPLOAD.JSP here, so you don't have to configure web.xml, huh, it is more lazy.</p> <p>UPLOAD.JSP</p> <p><% @ PAGE</p> <p>IMPORT =</p> <p>"java.io. *"%></p> <p><% @ PAGE</p> <p>IMPORT =</p> <p>"com.oreilly.servlet.multipartRequest"%></p> <p><% @ PAGE</p> <p>IMPORT =</p> <p>"com.oreilly.servlet.multipart.coverfileerenamepolicy"%></p> <p><% @ Page ContentType =</p> <p>"text / html; charSet = GB2312"%></p> <p><%</p> <p>// After the file is uploaded, save it in c: // uploadstring savedirectory =</p> <p>"c: // upload";</p> <p>/ / Each file is up to 5m, up to 3 files, so ...</p> <p>INT MAXPOSTSIZE = 3 * 5 * 1024 * 1024;</p> <p>// RESPONSE is encoded as "GB2312", and the default file name conflict resolution policy is used to achieve upload</p> <p>MultipartRequest Multi =</p> <p>New MultipartRequest (Request, Savedirectory, MaxPostsize,</p> <p>"GB2312");</p> <p>// Output Feedback Information</p> <p>ENUMERATION FILES = MULTI.GETFILENAMES ();</p> <p>While (files.hasmorelements ()) {</p> <p>System.err.println</p> <p>"ccc");</p> <p>String name = (string) FILES.NEXTELEMENT ();</p> <p>File f = multi.getfile (Name);</p> <p>IF (f! = null) {</p> <p>String filename = multi.getFileSystemName (name);</p> <p>String lastfilename = savedirectory </p> <p>"//" filename; out.println ("Uploaded file: lastfilename); out.println (" <hr> ");}}}%> <meta http-equiv =" content-type "content =" TEXT / HTML; Charset = GB2312 "> 5. Finally, the 2 files will be released to your server. Upload files will be done, you want to embed the function of sending attachments in your mail system, and use this to do it.</p></div><div class="text-center mt-3 text-grey"> 转载请注明原文地址:https://www.9cbs.com/read-117504.html</div><div class="plugin d-flex justify-content-center mt-3"></div><hr><div class="row"><div class="col-lg-12 text-muted mt-2"><i class="icon-tags mr-2"></i><span class="badge border border-secondary mr-2"><h2 class="h6 mb-0 small"><a class="text-secondary" href="tag-2.html">9cbs</a></h2></span></div></div></div></div><div class="card card-postlist border-white shadow"><div class="card-body"><div class="card-title"><div class="d-flex justify-content-between"><div><b>New Post</b>(<span class="posts">0</span>) </div><div></div></div></div><ul class="postlist list-unstyled"> </ul></div></div><div class="d-none threadlist"><input type="checkbox" name="modtid" value="117504" checked /></div></div></div></div></div><footer class="text-muted small bg-dark py-4 mt-3" id="footer"><div class="container"><div class="row"><div class="col">CopyRight © 2020 All Rights Reserved </div><div class="col text-right">Processed: <b>0.049</b>, SQL: <b>9</b></div></div></div></footer><script src="./lang/en-us/lang.js?2.2.0"></script><script src="view/js/jquery.min.js?2.2.0"></script><script src="view/js/popper.min.js?2.2.0"></script><script src="view/js/bootstrap.min.js?2.2.0"></script><script src="view/js/xiuno.js?2.2.0"></script><script src="view/js/bootstrap-plugin.js?2.2.0"></script><script src="view/js/async.min.js?2.2.0"></script><script src="view/js/form.js?2.2.0"></script><script> var debug = DEBUG = 0; var url_rewrite_on = 1; var url_path = './'; var forumarr = {"1":"Tech"}; var fid = 1; var uid = 0; var gid = 0; xn.options.water_image_url = 'view/img/water-small.png'; </script><script src="view/js/wellcms.js?2.2.0"></script><a class="scroll-to-top rounded" href="javascript:void(0);"><i class="icon-angle-up"></i></a><a class="scroll-to-bottom rounded" href="javascript:void(0);" style="display: inline;"><i class="icon-angle-down"></i></a></body></html><script> var forum_url = 'list-1.html'; var safe_token = 'VuNi1e8y5KopJhX9WwKTZsCR4IHqlyg4agGcCL_2FdofDhitytZTo1FwvJXCL7pEzoVCFg_2B9ZOlPmgIFVqqSzcLA_3D_3D'; var body = $('body'); body.on('submit', '#form', function() { var jthis = $(this); var jsubmit = jthis.find('#submit'); jthis.reset(); jsubmit.button('loading'); var postdata = jthis.serializeObject(); $.xpost(jthis.attr('action'), postdata, function(code, message) { if(code == 0) { location.reload(); } else { $.alert(message); jsubmit.button('reset'); } }); return false; }); function resize_image() { var jmessagelist = $('div.message'); var first_width = jmessagelist.width(); jmessagelist.each(function() { var jdiv = $(this); var maxwidth = jdiv.attr('isfirst') ? first_width : jdiv.width(); var jmessage_width = Math.min(jdiv.width(), maxwidth); jdiv.find('img, embed, iframe, video').each(function() { var jimg = $(this); var img_width = this.org_width; var img_height = this.org_height; if(!img_width) { var img_width = jimg.attr('width'); var img_height = jimg.attr('height'); this.org_width = img_width; this.org_height = img_height; } if(img_width > jmessage_width) { if(this.tagName == 'IMG') { jimg.width(jmessage_width); jimg.css('height', 'auto'); jimg.css('cursor', 'pointer'); jimg.on('click', function() { }); } else { jimg.width(jmessage_width); var height = (img_height / img_width) * jimg.width(); jimg.height(height); } } }); }); } function resize_table() { $('div.message').each(function() { var jdiv = $(this); jdiv.find('table').addClass('table').wrap('<div class="table-responsive"></div>'); }); } $(function() { resize_image(); resize_table(); $(window).on('resize', resize_image); }); var jmessage = $('#message'); jmessage.on('focus', function() {if(jmessage.t) { clearTimeout(jmessage.t); jmessage.t = null; } jmessage.css('height', '6rem'); }); jmessage.on('blur', function() {jmessage.t = setTimeout(function() { jmessage.css('height', '2.5rem');}, 1000); }); $('#nav li[data-active="fid-1"]').addClass('active'); </script>