保存一段jsp上传图片代码(好繁琐...谁有好的插件推荐不...)

维护一个很老的项目,加了个上传电子照功能。
用的是SmartUpload。好繁琐...
试过JQuery插件Uploadify貌似不太适合本项目
<%@ page contentType="text/html;charset=GBK"%>
<%@page import="com.jspsmart.upload.SmartUpload"%>
<%@page import="java.util.Date"%>
<%@page import="com.jspsmart.upload.File"%>
<%@page import="java.awt.Image"%>

<base target="_self">
<link href="../../css/style.css" rel="stylesheet" type="text/css">

<BODY background="../../image/bg.jpg"  leftMargin=0 topMargin=0>
<div>
	<div style="text-align: center;font-size: small;">
		<form action="uploadpic.jsp?oper=upload" method="post" enctype="multipart/form-data" name="form2">
		<br>
		<input type="file" name="pic">
		<p>请上传近期免冠证件照!照片大小为高度105至210像素,宽度75至150像素,文件大小50KB内!</p>
        <p>如照片不符合要求,请下载<a href="#">图片处理程序</a>进行处理。</p>
        <input type="submit" value="开始上传" >
        <input type="button"  value="关闭窗口" onclick="window.close()">
        
        </form>
	</div>
</div>
<%
	String oper = request.getParameter("oper");
	if("upload".equals(oper)){
	
		SmartUpload mySmartUpload = new SmartUpload();
		mySmartUpload.initialize(pageContext);
		try {
			mySmartUpload.upload();
		} catch (Exception e){
		%>
		  <SCRIPT language=javascript>
		  alert("只允许上传.jpg和.jpeg类型图片文件");
		  window.location='uploadpic.jsp';
		  </script>
	<%
		}File myFile = mySmartUpload.getFiles().getFile(0);
			if (myFile.isMissing()){%>
			   <SCRIPT language=javascript>
			   alert("请先选择要上传的文件");
			   </script><%}
			else{
			    boolean flagOne = true;
			    if(myFile.getFileExt().equals("jpg")||myFile.getFileExt().equals("JPG")||myFile.getFileExt().equals("jpeg")){
			    }
			    else{
			    	flagOne = false;
			    	%>
    				<script language=javascript>
					  alert("只允许上传.jpg类型图片文件");
					  </script>
					  <%
			    }
			    if(myFile.getSize()>50000){
			    	flagOne = false;
			    	%>
    				<script language=javascript>
					  alert("只允许文件大小50KB内的图片文件");
					  </script>
					  <%
			    }
			    if(flagOne){
			    	String myFileName = String.valueOf(new Date().getTime())+".jpg";
				    myFile.saveAs("/upload/"+myFileName,myFile.SAVEAS_VIRTUAL);
				    java.io.File file = new java.io.File(request.getRealPath("/")+"upload/"+myFileName);
				    if(file.exists()){
				    	Image src = javax.imageio.ImageIO.read(file);
				    	boolean flag = true;
				    	int old_w=src.getWidth(null); 
	    				int old_h=src.getHeight(null);
	    				if(old_w < 75 || old_w > 150){
	    					flag = false;
	    			%>
	    				<script language=javascript>
						  alert("只允许上传宽度75至150像素图片文件");
						  </script>
						  <%
	    				}
	    				if(old_h < 105 || old_h > 210){
	    					flag = false;
	    			%>
	    				<script language=javascript>
						  alert("只允许上传高度105至210像素图片文件");
						  </script>
						  <%
	    				}
	    				if(flag){
	    					%>
					    <SCRIPT language=javascript>
					    window.returnValue = '<%=myFileName%>';
					    </script>
					    <%
	    				}
	    			}
			    }
			    
			  }
	}
 %>
</body>

主窗体内:
t = window.showModalDialog('uploadpic.jsp','DialogWidth:450px;DialogHeight:350px;help:no;status:no');
	
拿回调值

你可能感兴趣的:(java,html,jquery,jsp)