Kindeditor图片上传jsp

阅读更多

看到Kindeditor3.1.2版本发布,于是编辑了一个编辑器图片上传的jsp版本,供大家参考使用。(可下载附件)

程序需要的commons-fileupload.jar可自行下载。

 

/**
 * Author:sanghonggang
 * Email:[email protected]
 * Version:1.0
 */
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import="java.util.*,java.io.*" %>
<%@ page import="org.apache.commons.fileupload.*" %>
<%@ page import="org.apache.commons.fileupload.disk.*" %>
<%@ page import="org.apache.commons.fileupload.servlet.*" %>
<%
//错误信息
String errorMsg = "";

//图片设置信息
String id		="";
String imgTitle = "";
String imgWidth = "";
String imgHeight = "";
String imgBorder = "";

//文件最大值
long maxSize = 1000000;

//定义文件上传的类型
String[] types = new String[]{"gif", "jpg", "jpeg", "png", "bmp"};

//文件保存目录路径
String savePath = request.getSession().getServletContext().getRealPath("/")+"attached/";

//文件保存目录URL
String saveUrl  = request.getContextPath()+"/attached/";

//判断是否为单个文件
boolean isMultipart = ServletFileUpload.isMultipartContent(request);

if(isMultipart){
	
	FileItemFactory factory = new DiskFileItemFactory();
	
	ServletFileUpload upload = new ServletFileUpload(factory);
	
	List items = upload.parseRequest(request);
	
	// Process the uploaded items
	Iterator iter = items.iterator();
	while (iter.hasNext()) {
	    FileItem item = (FileItem) iter.next();
	  	//原文件名
	    String fileName = item.getName();
	  	
	    if(item.getFieldName().equals("id")){
	    	id = item.getString();
	    }
	    if(item.getFieldName().equals("imgTitle")){
	    	imgTitle = item.getString();
	    }
	    if(item.getFieldName().equals("imgWidth")){
	    	imgWidth = item.getString();
	    }
	    if(item.getFieldName().equals("imgHeight")){
	    	imgHeight = item.getString();
	    }
	    if(item.getFieldName().equals("imgBorder")){
	    	imgBorder = item.getString();
	    }
	    		
	    //文件大小
	    long  fileSize	= item.getSize();
	    	    
	    if (!item.isFormField()) {
	    	//检查文件名
	    	if(item.getName()==""||item.getString()==null){
		    	errorMsg = "请选择文件。";
		    	break;
		    }

	    	//检查目录
	    	File uploadDir = new File(savePath);
	    	if(!uploadDir.isDirectory()){
	    		errorMsg = "上传目录不存在。";
	    		break;
	    	}
	    	//检查目录写权限
	    	if(!uploadDir.canWrite()){
	    		errorMsg = "上传目录没有写权限。";
	    		break;
	    	}
	    	//检查文件大小
	    	if(item.getSize()>maxSize){
	    		errorMsg = "上传文件大小超过限制。";
	    	}
	    	
	    	//获得文件扩展名
		  	String fileExt = fileName.substring(fileName.indexOf(".")+1);
	    	if(!Arrays.asList(types).contains(fileExt.toLowerCase())){
	    		errorMsg = "上传文件扩展名是不允许的扩展名。";
	    	}	
	    	
	    	//服务器上临时文件名
		   	String tempName = new Date().getTime()+"."+fileExt;
	    	
	    	//检查是否已上传
	    	File file = new File(savePath+"\\"+tempName);
	    	if(file.exists()){
	    		errorMsg = "临时文件可能不是上传文件。";
	    	}
	    	
	    	//上传文件	
	    	try{
		    	File uploadedFile = new File(savePath,tempName);
		    		
		    	item.write(uploadedFile);
	    	}catch(Exception e){
	    		errorMsg = "上传文件失败。";
	    	}
	    	
	    	saveUrl = saveUrl + tempName;
	    }
	}
	
	if(errorMsg.equals("")){
		//插入图片,关闭层
	    out.println("");
	    out.println("");
	    out.println("Insert Image");
	    out.println("");
	    out.println("");
	    out.println("");
	    out.println("");
	    System.out.println("");
	    out.println("");
	    out.println("");
	}else{
		out.println("");
	    out.println("");
	    out.println("error");
	    out.println("");
	    out.println("");
	    out.println("");
	    out.println("");
	    out.println("");
	    out.println("");
	}
	
}
%>

更多内容请看Blog
  • upload.jsp.zip (1.7 KB)
  • 下载次数: 614

你可能感兴趣的:(JSP,JavaScript,Apache,Gmail,HTML)