栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

KindEditor上传图片

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

KindEditor上传图片

KindEditor相关介绍以及下载可查看http://blog.csdn.net/mytt_10566/article/details/78062205。本篇主要关于上传图片,结合Spring MVC处理文件上传。


1.初始化编辑器
配置可参照KindEditor文档:http://kindeditor.net/docs/upload.html文档中uploadJson属性配置的是…/kindeditor/jsp/upload_json.jsp,我们可以参照该jsp修改成对应ImageController处理图片上传,此时配置成‘/项目名/image/uploadImg.do’


	



2.处理图片上传Controller
(1).上传图片时,前台提交文件的name属性默认是imgFile,所以使用@RequestParam(“imgFile”) MultipartFile imgFile进行绑定。拿到上传的文件后怎么处理根据业务需求进行即可。根据KindEditor文档,返回的Json数据:上传成功时{error:0, url:’…’};上传失败{error:1, message:’…’}。

(2).测试时上传到项目uploads目录下,返回图片路径时要加上相应的项目名,通过request.getServletContext().getContextPath()获取,返回的是’/项目名’

(3).对文件的处理可以参照KindEditor的upload_json.jsp

(4).返回的路径最好不包含中文,否则会有乱码问题

	@RequestMapping("/uploadKindEditorImg")
    @ResponseBody
    public KindEditorResult uploadImg(HttpServletRequest request, @RequestParam("imgFile") MultipartFile imgFile){
        KindEditorResult result = new KindEditorResult();

        try {
            // 获取绝对路径
            String realPath = request.getServletContext().getRealPath("/uploads");
            File imageFolder = new File(realPath); //查看是否有该文件夹
            if (!imageFolder.exists()) { //如果不存在
                imageFolder.mkdirs(); //创建该文件夹
            }
            //如果存在,将图片的名称重新命名
            String fileName = imgFile.getOriginalFilename();
            String suffixName = fileName.substring(fileName.lastIndexOf("."));
            String imageName= UUID.randomUUID()+suffixName;
            // 上传文件
            imgFile.transferTo(new File(realPath, imageName));
            result.setError(0);
            result.setUrl(realPath + "/" + imgFile.getOriginalFilename());
            result.setMessage("上传图片成功!");
        } catch (Exception e) {
            result.setError(1);
            result.setMessage("上传图片出错!");
        }

        return result;
    }

3.环境准备
(1)返回结果KindEditorResult

	private Integer error;// 0成功 1失败
    private String url;// 上传成功时路径
    private String message;// 上传失败时信息

    public Integer getError() {
        return error;
    }

    public void setError(Integer error) {
        this.error = error;
    }

    public String getUrl() {
        return url;
    }

    public void setUrl(String url) {
        this.url = url;
    }

    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }

(2)文件上传需要引入commons-io.jar、commons-fileupload.jar、处理JSON相关的jar包,可以使用KindEditor提供的jar包(位于…/kindeditor/jsp/lib目录下)。项目使用的是Spring MVC,直接使用了Jackson处理JSON,则可以不导入json-simple.jar。Maven依赖如下:


	commons-io
	commons-io
	2.4


	commons-fileupload
	commons-fileupload
	1.3.1



	com.fasterxml.jackson.core
	jackson-databind
	2.4.2



	com.googlecode.json-simple
	json-simple
	1.1


参考链接:
1.https://blog.csdn.net/mytt_10566/article/details/78066987
2.https://www.cnblogs.com/gfbzs/p/12269768.html

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/458639.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号