SpringMVC跨服务器方式文件上传

SpringMVC 跨服务器方式文件上传

	<!--允许跨服务器上传文件-->
    <dependency>
      <groupId>com.sun.jersey</groupId>
      <artifactId>jersey-core</artifactId>
      <version>1.18.1</version>
    </dependency>
    <dependency>
      <groupId>com.sun.jersey</groupId>
      <artifactId>jersey-client</artifactId>
      <version>1.18.1</version>
    </dependency>
<h3>跨服务器文件上传</h3>
        <form action="user/fileupload3" method="post" enctype="multipart/form-data">
            选择文件:<input type="file" name="upload"/><br/>
            <input type="submit" value="上传">
        </form>
@RequestMapping("/fileupload3")
    public String fileupload3(HttpServletRequest request, MultipartFile upload) throws Exception {
    
    
        System.out.println("跨服务器文件上传...");

        //定义上传文件服务器路径
        String path = "http://localhost:8080/uploads/";

        //说明上传文件项
        //获取上传文件的名称
        String filename = upload.getOriginalFilename();
        //把文件的名称设置唯一值,uuid
        String uuid = UUID.randomUUID().toString().replace("-", "");
        filename = uuid + "_" + filename;
        //创建客服端的对象
        Client client = Client.create();
        //和图片服务器进行连接
        WebResource webResource = client.resource(path + filename);
        //上传文件
        webResource.put(upload.getBytes());
        return "success";
    }

注意事项

1、不能传带中文的文件
2、出现500或者404问题的,部署的时候用下面的部署,不然会生成到tomcat下去,
这样部署会生成到项目中
在这里插入图片描述

3、需要自己添加uploads文件夹
4、在配置第二个tomcat即配置存储图片服务器的时候,在idea下点开tomcat设置(就是配置路径的界面),手动在“Deployment”中点击加号–>ExternalSource–>指定uploads文件夹,点击ok,重新启动服务器

猜你喜欢

转载自blog.csdn.net/weixin_51600120/article/details/113754615