第一步,准备一个tomcat服务器,在webapps目录下面新建文件夹upload,配置服务器读写功能,在web.xml中添加如下配置
<init-param>
<param-name>readonly</param-name>
<param-value>false</param-value>
</init-param>
第二步,导入jar包
commons-io-1.3.2.jar
jersey-client-1.18.1.jar
jersey-core-1.18.1.jar
文件上传需要这3个包
第三步,写个main方法即可
public class JerseyUpload {
public static void main(String[] args) {
//实例化一个jersey
Client client = new Client();
//另一台服务器的请求路径
String url = "http://localhost:8088/image-web/upload/test.jpg";
//设置请求路径
WebResource resource = client.resource(url);
String path = "C:\\Users\\Administrator\\Desktop\\画图.xlsx";
//读取图片到内存中
try {
byte[] byteArray = FileUtils.readFileToByteArray(new File(path));
resource.put(String.class, byteArray);
System.out.println("发送完成");
} catch (IOException e) {
e.printStackTrace();
}
}
}
spring MVC 版文件上传
@ResponseBody
@RequestMapping(value="/uploadPic.do")
public String uploadPic(@RequestParam(required=false) MultipartFile pic) {
if (pic == null) {
return null;
}
Client client = new Client();
String extendName = FilenameUtils.getExtension(pic.getOriginalFilename());//获取扩展名
String path = "upload/"+CommonUtils.getId()+"."+extendName;//保存数据库
String url = Constants.IMAGE_URL + path;
WebResource resource = client.resource(url);
try {
resource.put(String.class, pic.getBytes());
} catch (IOException e) {
throw new RuntimeException(e);
}
JSONObject json = new JSONObject();
json.put("path", path);
json.put("url", url);
return json.toString();
}
本方法可上传图片,任意文件