• 图片上传实例


    jsp:

        <form action="/image/save.jhtml" method="post" enctype="multipart/form-data" style=" 500px">
            <input type="hidden" name="focusId" value="${image.focusId}"/>
            <input type="hidden" name="type" value="${image.type}"/>
            <input type="file" name="imageFile"/>
            <input type="submit" value="上传"/>图片大小不能超过1M
        </form>
    

     java:

        @RequestMapping("/image/save.jhtml")
        public ModelAndView save(@RequestParam(value = "imageFile", required = false)
                                 MultipartFile imageFile, HttpServletRequest request, ModelMap model, Image image) {
            HttpSession session = request.getSession(false);
            User logUser = (User) session.getAttribute(GoutripUtils.USER_CONTEXT);
            if (null == logUser)
                return new ModelAndView("redirect:/views/public/index.jsp");
            String name = logUser.getName();
            image.setUpdator(name);
            image.setCreator(name);
            image.setStatus(1);
            String fileName = imageFile.getOriginalFilename();
            String lastName = fileName.substring(fileName.lastIndexOf('.'));
            if (lastName.length() > 5)
                lastName = ".jpg";
            final File targetFile = PathUtil.getRandImgFile(lastName);
            final String filePath = targetFile.getPath();
            if (!targetFile.exists())
                targetFile.mkdirs();
            try {
                imageFile.transferTo(targetFile);
            } catch (IOException e) {
                e.printStackTrace();
            }
            final String finalLastName = lastName;
            new Thread(new Runnable() {
                @Override
                public void run() {
                    String picTo = null;
                    picTo = filePath.substring(filePath.lastIndexOf(".")) + "_1000x500" + finalLastName;
                    ImageUtils.resize(filePath, picTo, 500, 1000, true);
                }
            }).start();
            String path = PathUtil.getRandImgFileUrl(targetFile);
            if (path.equals("/"))
                path = PathUtil.getImgFileUrl(targetFile.getPath());
            System.out.println(path);
            image.setUrl(path);
            imageService.save(image);
            if (null == model)
                model = new ModelMap();
            model.clear();
            model.put("focusId", image.getFocusId());
            model.put("type", image.getType());
            return new ModelAndView("redirect:/image/manager.jhtml").addAllObjects(model);
        }
    
  • 相关阅读:
    kubernetesCKA/CKS认证 日出东方
    T4模板引擎 参数调用
    swagger url调整
    mysql8修改密码
    vs插件开发 驼峰示例
    .net5 swagger 枚举注释
    .net5 swagger添加复制链接
    dapper
    vs 配置快捷发布nuget包到指定远程库
    jenkins 脚本安装多个插件 git提交后自动部署
  • 原文地址:https://www.cnblogs.com/sand-tiny/p/3976770.html
Copyright © 2020-2023  润新知