`
qljobs
  • 浏览: 30413 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

Kindeditor3.4实现图片上传示例(JSP)

阅读更多
下面是用于图片上传的JSP!源码我也上传了!
/**
 * Author:QingLong  
 * Date:2010-05-18 
 * Version:1.0 Beta
 */  
<%@ page pageEncoding="gbk"%>   
<%@ page import="java.util.*,java.io.*" %>
<%@ page import="org.apache.commons.fileupload.FileItem" %>
<%@ page import="org.apache.commons.fileupload.FileUploadException" %>
<%@ page import="org.apache.commons.fileupload.disk.DiskFileItemFactory" %>
<%@ page import="org.apache.commons.fileupload.servlet.ServletFileUpload" %>
<%@ page import="java.util.concurrent.locks.*" %>
<%   
    String id = "";   
    String url = "";   
    String imgTitle = "";   
    String imgWidth = "";   
    String imgHeight = "";   
    String imgBorder = "";   
    String filePath = "";   
    String align = "";   
    // 初始化上传工厂对象   
    DiskFileItemFactory factory = new DiskFileItemFactory();   
    // 设置上传工厂对象限制   
    factory.setSizeThreshold(1024 * 1024 * 20);   
    factory.setRepository(new File(request.getSession(true).getServletContext().getRealPath("/")));   
    // 创建上传对象   
    ServletFileUpload upload = new ServletFileUpload(factory);   
    upload.setFileSizeMax(1024 * 1024 * 20);   
    List<FileItem> items = null;   
    try {   
        items = upload.parseRequest(request);   
    } catch (FileUploadException e) {   
        e.printStackTrace(System.out);   
    }   
    for (Iterator<FileItem> i = items.iterator(); i.hasNext();) {   
        FileItem item = i.next();   
        if (item.isFormField()) {   
            String name = item.getFieldName();   
            String value = item.getString("gbk");   
            if (name.equals("id")) {   
                id = value;   
            } else if (name.equals("imgTitle")) {   
                imgTitle = value;   
            } else if (name.equals("imgWidth")) {   
                imgWidth = value;   
            } else if (name.equals("imgHeight")) {   
                imgHeight = value;   
            } else if (name.equals("imgBorder")) {   
                imgBorder = value;   
            } else if (name.equals("align")) {   
                align = value;   
            } else if (name.equals("url")) {   
                filePath = value;   
            }   
        } else {   
            // 取得表单域名   
            String fieldName = item.getFieldName();   
            // 取得文件名   
            String fileName = item.getName();   
            // 取得文件类型   
            String contentType = item.getContentType();   
               
            final Lock lock = new ReentrantLock();   
            String newName = null;   
            lock.lock();   
            try {   
                //防止文件名冲突    
                newName = System.currentTimeMillis() + fileName.substring(fileName.lastIndexOf("."),fileName.length());   
            } catch (Exception e) {   
                e.printStackTrace(System.err);   
            } finally {   
                lock.unlock();   
            }   
            filePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + request.getContextPath() + "/editor/" + "attached/" + newName;   
            FileOutputStream fos = new FileOutputStream(request.getSession().getServletContext().getRealPath("/")   
                    + "editor/" + "attached/" + newName);   
            if (item.isInMemory()) {   
                fos.write(item.get());   
                fos.close();   
            } else {   
                InputStream in = item.getInputStream();   
                byte[] buffer = new byte[1024];   
                int len;   
                while ((len = in.read(buffer)) > 0) {   
                    fos.write(buffer, 0, len);   
                }   
                in.close();   
                fos.close();   
            }   
        }   
    }   
    out.println("<html><head><title>Insert Image</title><meta http-equiv='content-type' content='text/html; charset=gbk'/></head><body>");   
    out.println("<script type='text/javascript'>");   
    out.println("parent.parent.KE.plugin['image'].insert('" + id   
            + "','" + filePath + "','" + imgTitle + "','" + imgWidth   
            + "','" + imgHeight + "','" + imgBorder + "','" + align   
            + "');</script>");   
    out.println("</body></html>");   
%>
分享到:
评论

相关推荐

    基于kindeditor3.4的上传功能的JAVA实现

    标题 "基于kindeditor3.4的上传功能的JAVA实现" 指的是一个关于如何在Java后端实现KindEditor编辑器3.4版本中的文件上传功能的技术分享。KindEditor是一款开源的JavaScript富文本编辑器,它提供了丰富的API和功能,...

    基于自制WEB服务器的网站kindeditor成功多图片上传示例.zip

    易语言使用kindeditor进行图片单个和图片批量上传示例,同时也是除了ASP、php、JSP和NET等之外的自制WEB服务器程序使用kindeditor的示例。E2EE、E4A、易语言、TCP服务器、火山编程、光速网络引擎、星光极速、利快云...

    KindEditor-4.1.9批量上传图片完整示例(可以上传到image目录下的子目录中,可返回上一级目录,并实现了按名称、大小、类型排序的功能)

    这是本人写的一个基于KindEditor-4.1.9的Java项目,采用Struts2框架,实现了KindEditor单张图片上传、批量图片上传,可以上传到image目录下的子目录中,可返回上一级目录,并实现了按名称、大小、类型排序的功能。...

    kindEditor+图片批量上传

    在技术实现层面,"KindEditor"很可能采用了HTML5的File API来实现图片的本地预览和上传功能,同时结合了AJAX技术进行后台数据传输,以确保用户在上传大量图片时的流畅体验。为了优化上传速度和服务器存储空间,可能...

    vue 使用kindeditor粘贴复制图片上传给自己服务器,单独图片上传

    vue 使用kindeditor粘贴复制图片上传给自己服务器,单独图片上传,避免用户到处寻找,解决了用户粘贴复制截图时候,图片变成base64,上传给后台的时候长度过于长,所以在粘贴的时候就上传给服务器,最后以形式显示在富...

    jsp实现kindeditor在线编辑器可上传图片,附件源码献上

    4. **返回结果**: 保存文件后,服务器需要返回一个响应告知KindEditor上传的结果。如果成功,可以返回文件的URL,以便编辑器在页面上显示;如果失败,则返回错误信息。 5. **安全考虑**: 上传功能必须考虑到安全性...

    KindEditor 4.1.11 完整图片上传 表单提交Demo

    KindEditor 4.1.11 是一个流行的开源富文本编辑器,专为网页内容编辑设计,支持多种功能,如图片上传、URL回显、图片预览等。在这个"完整图片上传 表单提交Demo"中,我们主要关注的是如何在Java环境下,特别是在...

    kindeditor-3.4.2.zip

    5. **图片上传与管理**:内置图片上传功能,支持图片预览和管理,方便用户上传和组织图片资源。 6. **视频和音频嵌入**:允许用户直接在编辑器中插入视频和音频,支持多种媒体格式。 7. **代码高亮**:对于程序员或...

    kindeditor的JSP示例

    虽然官方的示例可能需要较多的修改才能适应你的项目,但这里我们提供了一个最小化的集成示例,其中包含了`jsp/demo.jsp`,这是一个可以直接运行的演示页面,可以帮助你快速理解如何在JSP中调用和使用KindEditor。...

    为 KindEditor 实现图片上传

    在使用 KindEditor 进行文本编辑时,一个常见的需求是实现图片上传功能,以便用户能够方便地将本地图片插入到编辑的内容中。本篇文章将详细介绍如何为 KindEditor 实现图片上传功能。 首先,我们需要理解 ...

    kindeditor上传图片自动压缩过大的图片

    总的来说,实现KindEditor上传图片自动压缩过大的图片,需要结合服务器端脚本处理和合适的图像处理库。这个过程不仅可以提高网站性能,也可以帮助维护服务器资源,为用户提供更好的体验。记得在实现时考虑错误处理和...

    kindEditor4.1版修改上传图片宽高(图片自适应)

    ### kindEditor4.1 版本中实现图片自适应的方法 #### 一、问题背景与需求分析 在使用kindEditor4.1版本时,我们可能会遇到一个常见的问题:上传的图片无法很好地适配不同大小的屏幕,导致在某些设备上出现拉伸或...

    kindeditor编辑器,可上传多图片,文件上传等功能

    KindEditor内置了图片和文件上传插件,用户可以直接在编辑器内上传图片或文件,无需离开当前页面。上传过程通常包括选择文件、预览、上传和返回编辑器,这些步骤都是自动化的。上传后的资源可以被嵌入到编辑内容中...

    kindeditor图片上传携带token字段

    本文将详细讲解如何在KindEditor中实现图片上传时携带token字段,以确保数据的安全性和完整性。 首先,理解“token”在Web开发中的作用至关重要。Token通常用于验证客户端请求的合法性,防止跨站请求伪造(Cross-...

    kindeditor 分页和图片上传完整代码

    在这个主题中,我们将深入探讨如何在KindEditor中实现分页功能以及图片上传的完整代码实现。 首先,让我们了解一下KindEditor的基本结构。KindEditor是用JavaScript编写的,支持多语言,提供丰富的API和插件,可以...

    kindeditor上传视频、图片功能实现

    在“kindeditor上传视频、图片功能实现”中,我们将探讨如何利用KindEditor与Java后端配合,实现在网页上进行图片和视频的上传功能。 1. **KindEditor的图片上传功能**: KindEditor内建了图片上传的功能,用户...

    kindeditor-3.4.4 HTML可视化编辑器

    KindEditor非常适合在CMS、商城、论坛、博客、Wiki、电子邮件等互联网应用上使用,2006年7月首次发布2.0以来,KindEditor依靠出色的用户体验和领先的技术不断扩大编辑器市场占有率,目前在国内已经成为最受欢迎的...

    kindeditor jsp示例源码(包含上传文件)

    此示例源码中,服务器端部分可能包含一个Servlet或Controller,用于接收KindEditor上传的文件。文件会被临时保存在服务器的某个目录下,然后返回一个JSON响应。JSP和Servlet之间的交互通常使用HTTP请求,通过POST...

    完整版kindeditor修正上传图片问题

    在"完整版KindEditor修正上传图片问题"这个主题中,我们将探讨如何解决KindEditor在处理图片上传时可能遇到的问题,以及如何配置和定制编辑器以适应不同的后台环境。 首先,KindEditor提供了一个`demo`文件夹,其中...

    kindEditor批量传图配置

    本文将详细介绍如何正确配置kindEditor实现多图上传功能,并着重讲解容易出错的地方——主要是路径配置以及确保系统给予控件上传图片的权限。 #### 二、环境准备 在开始配置之前,请确保已经安装并正确引入了以下...

Global site tag (gtag.js) - Google Analytics