zoukankan      html  css  js  c++  java
  • 上传图片

    前端代码:

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
    <!DOCTYPE HTML>
    <html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>单图片上传</title>
    </head>
    <body>
    <div style="color: red">
        <c:forEach items="${errs}" var="err">
            <div>${err}</div>
        </c:forEach>
    </div>
    
    <fieldset>
        <legend>图片上传</legend>
        <h2>只能上传单张10M以下的 PNG、JPG、GIF 格式的图片</h2>
        <form action="/shop/shop1" method="post" enctype="multipart/form-data">
            选择文件:<input type="file" name="ufile">
            <input type="submit" value="上传">
        </form>
    </fieldset>
    </body>
    </html>

    后台代码:

    @Controller
    @RequestMapping("/shop")
    public class ImgController {
    
        @RequestMapping(method = RequestMethod.GET)
        public String img() {
            return "img";
        }
    
        @PostMapping("/shop1")
        public String img(@RequestPart("ufile") MultipartFile file, Model model, HttpServletRequest req) {
            if (file.isEmpty()) {
                model.addAttribute("err", "不能为空");
                return "img";
            }
            //图片验证
            if (!file.getContentType().contains("image/")) {
                model.addAttribute("err", "只允许图片上传");
                return "img";
            }
            //图片大小只能为5M
            if (file.getSize() > 1024 * 1024 * 5) {
                model.addAttribute("err", "文件超出大小");
                return "img";
            }
    
            //路径
            String path = req.getServletContext().getRealPath("");
            path = path + "images\";
            File file1 = new File(path);
            if (!file1.exists()) {
                //如果不存在就创建
                file1.mkdirs();
            }
    
            String filename = file.getOriginalFilename().substring(0, file.getOriginalFilename().lastIndexOf("."));
            filename = "upload_" + filename + "_" + new SimpleDateFormat("yyyy-MM-dd").format(new Date());
            filename = filename + file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf("."), file.getOriginalFilename().length());
    
            try {
                file.transferTo(new File(path + "\" + filename));
            } catch (IOException e) {
                model.addAttribute("err", "文件上传失败,请重新上传");
            }
    
            return "img";
        }

  • 相关阅读:
    k8s--容器挂载 error: /proc must be mounted
    mysql--read only
    C#读取Excel文件(.xls .xlsx)
    如何使用BBCode
    markdown使用经验积累
    openlayers学习之-----入门篇
    echarts学习之----动态排序柱状图
    echarts学习之----多图例折线图
    Web3D学习之-----全景图预览插件photo-sphere-viewer
    vue报错解决----npm ERR!
  • 原文地址:https://www.cnblogs.com/nongzihong/p/10075391.html
Copyright © 2011-2022 走看看