文件上传,带其他非文件参数,返回文件可以访问的本地地址

    @ResponseBody
    @RequestMapping(value = "/customer/credit/uploadfileurl")
    public String test(@RequestParam("file") CommonsMultipartFile file,String lll,HttpServletRequest request) throws Exception {
        //获取本地文件地址
        String path = request.getSession().getServletContext().getRealPath("upload");  
        String fileName = file.getOriginalFilename();  
        System.out.println(path);  
        File targetFile = new File(path, fileName);  
        if(!targetFile.exists()){  
            targetFile.mkdirs();  
        }  
        //保存  
        try {  
            file.transferTo(targetFile);  
        } catch (Exception e) {  
            e.printStackTrace();  
        }  
        //返回访问地址
        return  "http://"+getRemoteHost(request)+":端口"+"/view/upload/"+fileName;
    }
    public String getRemoteHost(javax.servlet.http.HttpServletRequest request){
        String ip = request.getHeader("x-forwarded-for");
        if(ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)){
            ip = request.getHeader("Proxy-Client-IP");
        }
        if(ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)){
            ip = request.getHeader("WL-Proxy-Client-IP");
        }
        if(ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)){
            ip = request.getRemoteAddr();
        }
        return ip.equals("0:0:0:0:0:0:0:1")?"127.0.0.1":ip;
    }

猜你喜欢

转载自blog.csdn.net/hujun_123456/article/details/78261602
今日推荐