模拟将本地文件上传至外服务器

当前项目地址localhost:8080/qvod
文件上传地址localhost:9090/img
(可将当前TomCat文件复制一份,将复制的那份更改xml文件相当于外服务器)

建立一个jsp文件:
<a href="${pageContext.request.contextPath }/UpFile.jsp">上传图片</a>

建立Upfile.jsp:body内容如下
<form action="${pageContext.request.contextPath }/fileUpServlet2" 
method="post" enctype="multipart/form-data">
		<input type="text" name="mytext"> <br>
		<input type="file" name="headPicure"> <br>
		<input type="submit">
	</form>

注意:因为是上传文件,enctype一定要修改为multipart/form-data 提交方式也要更改为post

之后建立名字为fileUpServlet2的Servlet

重写doGet方法:

	DiskFileItemFactory dfif = new DiskFileItemFactory();
	ServletFileUpload sfu = new ServletFileUpload(dfif);
	try {
		List<FileItem> items = sfu.parseRequest(request);
		for (FileItem item:items) {
			if (item.isFormField()) {
				System.out.println(item.getFieldName()+"========"+item.getString("UTF-8"));
			}
			else {
				String uuid = UUID.randomUUID().toString();
				String imgPath =(String) this.getServletContext().getAttribute("imgBasicPath");
				String imgName = item.getName();
				if (item.getSize()>0) {
					String savePath = imgPath+"/"+uuid+imgName;
					Client c = Client.create();
					WebResource res = c.resource(savePath);
					res.put(item.getInputStream());
				}
			}
		}
	} catch (FileUploadException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	}
}`

需要注意的是:因为之前文件的解码类型是multipart/form-data与默认的提交类型不一样,因此正常的reuqest.getparameter()等方法就不能取到结果,文件上传需要专门使用文件上传类也就是DiskFileItemFactory 和ServletFileUpload

运行前两个虚拟主机确保开启状态,运行结果如下:
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 要将数据上传到本地服务器,您需要遵循以下步骤: 1.在本地服务器上创建一个目录,以存储上传的数据。 2.使用FTP(File Transfer Protocol)客户端连接到本地服务器。 3.将数据文件从本地计算机拖放到FTP客户端的远程服务器窗口中。 4.等待文件上传。 5.验证数据文件是否已功上传到本地服务器。 6.如果上传失败,请检查FTP连接和服务器设置,并尝试重新上传文件。 请注意,上传数据的方法可能因服务器配置和您使用的工具而有所不同。您可以参考本地服务器的文档或向服务器管理员寻求帮助。 ### 回答2: 将数据上传到本地服务器可以通过以下步骤完: 1. 准备本地服务器:首先需要设置好本地服务器,包括安装好合适的操作系统、配置好网络设置以及安装好所需的服务器软件。 2. 设计数据库:如果需要将数据存储在本地服务器上,首先需要设计好数据库,包括创建数据表、定义字段类型和设置约束等。可以使用MySQL、SQLite等关系型数据库软件。 3. 编写代码:在本地服务器上开发一个程序,负责接收数据并将其存储到数据库中。可以使用编程语言如Java、Python等来编写这部分代码,通过HTTP、TCP/IP等协议接收数据,并使用数据库操作API将数据写入数据库。 4. 设置网络服务:为了能够接收来自外部的数据上传请求,需要在本地服务器上配置好网络服务,如设置端口转发、配置防火墙等。另外,需要保证本地服务器与上传数据的设备处于同一个局域网中或进行端口映射等网络设置。 5. 测试和优化:完以上步骤后,进行测试以确保数据上传功能正常工作。可以使用测试工具模拟数据上传请求,检查上传数据的完整性和准确性。根据实际情况对程序进行优化,提高数据上传的效率和稳定性。 需要注意的是,在上传数据到本地服务器时,要确保上传过程中的数据传输安全性。可以使用HTTPS等安全协议进行数据加密传输,避免数据被窃取或篡改。 总之,通过准备服务器、设计数据库、编写代码、设置网络服务和进行测试,就能够将数据功上传到本地服务器上。 ### 回答3: 要将数据上传到本地服务器,可以按照以下步骤进行操作: 1. 准备服务器环境:确保本地服务器已经安装并配置好了所需的软件和服务,比如HTTP服务器(如Apache或Nginx)、数据库(如MySQL或MongoDB)等。 2. 编写数据上传的代码:根据具体需求和技术栈,选择相应的编程语言和框架来编写数据上传的代码。一般来说,可以使用HTML的表单和POST请求,或者使用编程语言提供的库或接口来实现数据上传的功能。 3. 创建上传接口:在服务器上创建一个接收数据的上传接口,该接口可以接收来自客户端的请求,并将数据保存到服务器上的特定位置。可以使用服务器端的编程语言(如PHP、Python或Node.js)来创建这个接口。 4. 配置服务器端环境:根据具体的服务器环境和代码实现,需要对服务器进行相应的配置。比如,检查服务器的权限设置,确保上传的数据可以被正确地保存到指定的目录中。 5. 测试上传功能:在客户端上,使用上传代码的方式来测试数据上传的功能。可以使用浏览器访问包含上传表单的网页,或者使用相应的编程语言来模拟客户端的请求。 6. 处理上传的数据:在服务器端接收到上传的数据后,可以对数据进行相应的处理,比如校验数据的合法性、写入数据库等。 7. 返回上传结果:根据上传结果,可以向客户端返回相应的提示信息,告知上传是否功。 总结:数据上传到本地服务器需要准备服务器环境,编写上传代码,创建上传接口,配置服务器端环境,测试上传功能,处理上传的数据,返回上传结果。通过这些步骤,可以实现将数据从客户端上传到本地服务器
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值