文件上传——Spring MVC跨服务器
2020-04-28 16:10:01来源:博客园 阅读 ()
文件上传——Spring MVC跨服务器
-
-
form表单的enctype取值必须是multipart/form-data。enctype的功能是请求正文的类型
-
method必须是post
-
需要有<input type="file" />标签
-
使用commons-fileupload组件实现文件,需要导入该组件相应的支撑jar包
-
commons-fileupload-1.3.1.jar
-
commons-io-2.4.jar
-
<!-- 文件上传组件 --> <dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.3.1</version> </dependency> <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>2.4</version> </dependency>
<form action="user/upload" method="post" enctype="multipart/form-data"> <input type="file" name="avatar" /> <input type="submit" value="上传" /> </form>
-
导入sun公司提供的jar包
<!-- 跨服务器上传文件的jar包 --> <dependency> <groupId>com.sun.jersey</groupId> <artifactId>jersey-client</artifactId> <version>1.18.1</version> </dependency> <dependency> <groupId>com.sun.jersey</groupId> <artifactId>jersey-core</artifactId> <version>1.18.1</version> </dependency>
-
搭建一个图片服务器,简单来说就是再创建一个项目,将这个项目的HTTP port和JMX port端口都改一下就可以了
-
如果出现这样的错误:PUT ***************** returned a response status of 404 Not Found ,说明需要修改tomcat服务器的web.xml主配置文件了(不是项目目录下的web.xml),在配置文件中添加代码即可
<init-param> <param-name>readonly</param-name> <param-value>false</param-value> </init-param>
-
如果出现这样的错误:PUT **************** returned a response status of 409 Conflict,说明图片服务器缺少文件目录,这个时候是在项目目录的target下的项目目录下手动创建文件保存的目录即可。
-
控制器方法的参数名称必须和表单上文件的input标签的name值相同
import com.sun.jersey.api.client.Client; import com.sun.jersey.api.client.WebResource; import org.springframework.web.multipart.MultipartFile; ? import java.util.UUID ? @Controller @ResquestMapping(value="user") public class UserController{ @RequestMapping(value="upload") public String upload(MultipartFile avatar) throws Exception{ //指定图片保存的服务器地址 String path = "http://127.0.0.1:8081/uploads"; String filename = avatar.getOriginalFilename(); String uuid = UUID.randomUUID().toString().replace("-", ""); filename = uuid+"_"+filename; //创建客户端对象 Client client = Client.create(); //连接图片服务器 WenResource webResource = client.resource(path+filename); //上传文件 webResource.put(avatar.getBytes()); return "user"; } }
-
原文链接:https://www.cnblogs.com/aitiknowledge/p/12796551.html
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- Spring系列.ApplicationContext接口 2020-06-11
- springboot2配置JavaMelody与springMVC配置JavaMelody 2020-06-11
- 给你一份超详细 Spring Boot 知识清单 2020-06-11
- SpringBoot 2.3 整合最新版 ShardingJdbc + Druid + MyBatis 2020-06-11
- 掌握SpringBoot-2.3的容器探针:实战篇 2020-06-11
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash