图片上传

//删除图片
function deleteImage(id) {
    if (confirm("确定要删除么?")) {
        $.ajax({
            type : 'post',
            data : {
                id : id
            },
            url : "${BASE }/sys/news/task/deleteImage",
            success : function(data) {
                if (data == "Y") {
                    alert("删除成功");
                    $("#image_" + id).remove();
                } else {
                    alert("删除失败");
                }
            }
        });
    }
}

//添加图片
function upImage(){
    $.ajaxFileUpload
    (
        {
            url: "${BASE }/sys/news/task/uploadImage", //用于文件上传的服务器端请求地址
            secureuri: false, //是否需要安全协议,一般设置为false
            fileElementId:'uploadFile', //文件上传域的ID
            dataType: 'text', //返回值类型 一般设置为json或者text,xml
            success: function (data, status)  //服务器成功响应处理函数
            {    
                if(data!="N"){
                    var ids=data.split("#");
                    if(id==null){
                        id=ids[0];
                    }else{
                        id=id+","+ids[0];
                    }
//                     $("#imageDiv").append("<img style='width: 100px;height: 100px;' src='"+ids[1]+"'/>&nbsp;&nbsp;");
                    $("#imageDiv")
                    .append(
                            "<img id='image_"
                                    + ids[0]
                                    + "' style='width: 100px;height: 100px;' οnclick='deleteImage("
                                    + ids[0] + ");' src='"
                                    + ids[1]
                                    + "'/>&nbsp;&nbsp;");
                }else{
                    alert("上传失败");
                }
                
            },
            error: function (data, status, e)//服务器响应失败处理函数
            {
                alert(e);
            }
        }
    );
}

/**
     * 添加图片
     */
    @RequestMapping(value="/uploadImage",method=RequestMethod.POST)
    @ResponseBody
    public String uploadFile(MultipartFile  uploadFile,String id,String title,HttpServletResponse response){
        String[] IMAGE_TYPE = new String[] { ".bmp", ".jpg", ".jpeg", ".gif", ".png" };
        String fileName="";
        String picId ="";
        String url="";
        SystemFiles systemFile=new SystemFiles();
        try {
            //文件流不能为空,文件原始名不能为空
            // 校验图片格式
            boolean isLegal = false;
            for (String type : IMAGE_TYPE) {
                if (StringUtils.endsWithIgnoreCase(uploadFile.getOriginalFilename(), type)) {
                    isLegal = true;
                    break;
                }
            }
            // 封装Result对象,并且将文件的byte数组放置到result对象中
            PicUploadResult fileUploadResult = new PicUploadResult();
            //0-上传成功   1-上传失败
            fileUploadResult.setError(isLegal ? 0 : 1);
            // 写文件到磁盘
            String suffix = StringUtils.substringAfter(uploadFile.getOriginalFilename(), ".");
            //获取项目路径
            String basePath = request.getSession().getServletContext().getRealPath("/");
            fileName = UUIDUitl.generateUUID()+"."+suffix;
            //存储七牛
            QiniuUtil.uploadFile(uploadFile,fileName,basePath);
            
            // 校验图片是否合法
            // 通过获取文件的宽和高,验证文件是否为图片
            /*isLegal = false;
            BufferedImage image = ImageIO.read(uploadFile.getInputStream());
            if (image != null) {
                fileUploadResult.setWidth(image.getWidth() + "");
                fileUploadResult.setHeight(image.getHeight() + "");
                isLegal = true;
            }*/
            // 状态
            fileUploadResult.setError(isLegal ? 0 : 1);
            //图片水印处理
            
            //存储文件至服务器
            if(isLegal){
                SystemFiles systemFiles = new SystemFiles();
                if(null!=id&&!id.equals("")){
                    systemFiles.setRelationId(id);
                    systemFiles.setType(Long.valueOf(5));
                }
                systemFiles.setUserId(systemFile.getUserId());
                systemFiles.setHdPictureUrl(QiniuParams.QINIU_URL + fileName);//文件路径
                systemFiles.setOldName(uploadFile.getOriginalFilename());//旧文件名
                systemFiles.setNewName(fileName);//新文件名
                systemFiles.setFileSize(uploadFile.getSize());//文件大小
                systemFiles.setSuffix(suffix);//文件类型
                systemFiles.setCreateTime(new Date());//当前时间
                picId = systemFilesService.insert(systemFiles);
                PmsOperator user = (PmsOperator) request.getSession().getAttribute(PermissionConstant.OPERATOR_SESSION_KEY);
                ResponseData data=new ResponseData();
                if(!picId.equals("0")){
                    data.setCode(CodeEnum.SUCCESS.code);
                    MDCUtil.addMdc(data,OperationEnum.OPERATION_INSERT.value,OperationEnum.OPERATION_PUBLISH_MYTASKE.value);
                    log.info("用户为:"+user.getOperatorProp().getRealName()+"对新闻"+title+",进行了图片的添加操作");
                }else{
                    data.setCode(CodeEnum.FALSE.code);
                    log.info("用户为:"+user.getOperatorProp().getRealName()+"对新闻"+title+",进行了图片的添加操作。操作失败");
                }
                url=systemFiles.getHdPictureUrl();
            }
            return picId+"#"+url;    
        } catch (Exception e) {
            e.printStackTrace();
            return "N";
        }
        
        
    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值