JSP實現圖片上傳
阿新 • • 發佈:2019-02-05
upfile.jsp 檔案程式碼如下:
<form method="post" action="uploadimage.jsp" name="form1" enctype="multipart/form-data">
<input type="file" name="file">
<input type="submit" name="sub" value="upload">
</form>
檔案程式碼如下:
<%@ page language="java" pageEncoding="gb2312"%> <%@ page import="java.io.*,java.awt.Image,java.awt.image.*,com.sun.image.codec.jpeg.*,java.sql.*,com.jspsmart.upload.*,java.util.*"%> <%@ page import="mainClass.*" %> <html> <head> <title>My JSP 'uploadimage.jsp' starting page</title> </head> <body> <% SmartUpload sma=new SmartUpload(); long file_max_size=4000000; String filename1="",ext="",testvar=""; String url="uploadfiles/"; sma.initialize(pageContext); try { sma.setAllowedFilesList("jpg,gif"); sma.upload(); }catch(Exception e){ %> <script language="jscript"> alert("只允許上傳jpg,gif圖片") window.location.href="upfile.jsp" </script> <% } try{ com.jspsmart.upload.File myf=sma.getFiles().getFile(0); if(myf.isMissing()){ %> <script language="jscript"> alert("請選擇要上傳的檔案!") window.location.href="upfile.jsp" </script> <% }else{ ext=myf.getFileExt(); int file_size=myf.getSize(); String saveurl=""; if(file_size < file_max_size){ Calendar cal=Calendar.getInstance(); String filename=String.valueOf(cal.getTimeInMillis()); saveurl=request.getRealPath("/")+url; saveurl+=filename+"."+ext; myf.saveAs(saveurl,sma.SAVE_PHYSICAL); myclass mc=new myclass(request.getRealPath("data/data.mdb")); mc.executeInsert("insert into [path] values('uploadfiles/"+filename+"."+ext+"')"); out.println("圖片上傳成功!"); response.sendRedirect("showimg.jsp"); } } }catch(Exception e){ e.printStackTrace(); } %> </body> </html>