• 上传文件


    <!--hutool 常用工具-->
            <dependency>
                <groupId>cn.hutool</groupId>
                <artifactId>hutool-all</artifactId>
                <version>5.4.1</version>
            </dependency>
            <!--start poi-->
            <dependency>
                <groupId>org.apache.poi</groupId>
                <artifactId>poi</artifactId>
                <version>4.1.2</version>
            </dependency>
            <!-- 导入导出Excel时用到 -->
            <dependency>
                <groupId>org.apache.poi</groupId>
                <artifactId>poi-ooxml</artifactId>
                <version>4.1.2</version>
            </dependency>
            <!--end poi-->
    @Resource
        private HttpServletRequest request;
    @ApiOperationSupport(author = "wensm")
        @ApiOperation(value = "上传logo")
        @PostMapping(value = "/uploadLogo")
        public ObjectRestResponse<String> uploadLogo(@RequestParam("file") MultipartFile file) throws IOException {
            log.info("上传logo");
            if (file.isEmpty()) {
                log.warn("上传失败,请选择文件");
                throw new ErpException(ErrorMessagesEnum.ERR_UPLOAD_FAILED);
            }
            DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMddHHmmssSSS");//17位
            String dateTime_str = LocalDateTime.now().format(formatter);
            String uri = request.getRequestURI();
            String rootPath = System.getProperty("user.dir");//E:IdeaProjectsyq
            String fileName = file.getOriginalFilename();
                    //获取最后一个.的位置
            int lastIndexOf = fileName.lastIndexOf(".");
            //获取文件的后缀名 .jpg
            String suffix = fileName.substring(lastIndexOf);
    //        String filePath = "/Users/itinypocket/workspace/temp/";
            String filePath = rootPath+Constants.UPLOAD_DIR+uri+"/"+dateTime_str+suffix;
            File dest = new File(filePath);
            if (!dest.exists()) {
                dest.mkdirs();
            }
            try {
                file.transferTo(dest);
                log.info("上传成功");
                return new ObjectRestResponse<String>().rel(true).data(filePath.replace("\","/"));
            } catch (IOException e) {
                log.error(e.toString(), e);
            }
            return new ObjectRestResponse<String>().rel(true);
        }
    @RequestMapping("xxx")
    public String fileImgSave(@RequestParam("filename") MultipartFile[] files,HttpServletRequest request){
    //保存文件的路径
    String realPath = request.getSession().getServletContext().getRealPath("/imgssss");
    File path = new File(realPath);
    if(!path.exists()){
     path.mkdirs();
    }
           //判断file数组不能为空并且长度大于0
           if(files != null && files.length > 0){
             //循环获取file数组中得文件
             for(int i = 0;i < files.length;i++){
               MultipartFile file = files[i];
               //保存文件
               if (!file.isEmpty()){
                try {
                  //转存文件 file.getOriginalFilename();文件原名称包括后缀名
                  file.transferTo(new File(realPath+"/img"+i+".png"));
                } catch (IOException e) {
                  e.printStackTrace();
                }
              }
             }
           }
     
    return "ok";
    }
  • 相关阅读:
    DDos游戏行业受攻击最多
    木马——本质就是cs socket远程控制,反弹木马是作为c端向外发起网络请求
    IPS
    C&C控制服务的设计和侦测方法综述——DDoS攻击,上传从宿主机偷窃的到的信息,定时给感染机文件加密勒索等。
    Fast Flux技术——本质就是跳板,控制多个机器,同一域名指向极多的IP(TTL修改为0),以逃避追踪
    DNS解析污染原理——要么修改包,要么直接丢弃你的网络包
    将string当字节流使
    Memcached常用命令及使用说明
    在Linux上安装Memcached服务
    安装和使用memcached
  • 原文地址:https://www.cnblogs.com/mingforyou/p/14785760.html
Copyright © 2020-2023  润新知