多学习。

SpringMVC跨服务器文件上传

分服务器的目的

上传分析

实现

1.导入jar包(jersey)

    <dependency>
      <groupId>com.sun.jersey</groupId>
      <artifactId>jersey-core</artifactId>
      <version>1.19</version>
    </dependency>

    <dependency>
      <groupId>com.sun.jersey</groupId>
      <artifactId>jersey-client</artifactId>
      <version>1.19</version>
    </dependency>

2.修改tomcat的配置文件:conf/web.xml,在DefaultServlet下添加

写入文件权限

		<init-param>
			<param-name>readonly</param-name>
			<param-value>false</param-value>
		</init-param>

3.前端代码

    <h3>跨服务器文件上传</h3>
    <form action="user/fileUpLoad3" method="post" enctype="multipart/form-data">
        选择文件:<input type="file" value="选择文件" name="upload"><br>
        <input type="submit" value="上传">
    </form>

4.后端代码

   @RequestMapping("/fileUpLoad3")
    public String fileUpLoad3(MultipartFile upload) throws Exception{
        System.out.println("跨服务器文件上传");

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

        //获取文件名称
        String fileName = upload.getOriginalFilename();
        //变为唯一值
        fileName = UUID.randomUUID().toString().replace("-","")+"_"+fileName;

        //创建客户端对象
        Client client = Client.create();

        //和图片服务器进行连接
        WebResource webResource = client.resource(path+fileName); //如果path末尾无/ 则需要 path+/+filename

        //上传文件
        webResource.put(upload.getBytes());

        return "success";
    }
posted @ 2022-05-08 17:13  czyaaa  阅读(51)  评论(0)    收藏  举报