JSP实现图片上传

时间:2022-06-10 22:06:36
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>
uploadimage.jsp 文件代码如下:
<%@ 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>