您的位置:首页 > 编程语言 > Java开发

Java通过jersey实现客户端图片上传示例

2017-08-01 00:25 615 查看
在很多项目中都会有一台专门的文件服务器来保存文件的,这边记录下客户端通过jersey上传图片到文件服务端的实现。

由于要在不同主机上上传文件,所以不能直接通过流的方式来写,需要通过webService来完成,jersey是基于Java的一个轻量级RESTful风格的Web Services框架,它让客户端文件上传变得更简单。

1. maven依赖

spring的一些包以及fileupload和io包这边就不贴出来了。

?
2. 配置tomcat下的conf/web.xml文件

打开文件服务器下的此文件,然后搜索readonly这个单词,可以看到这段注释代码:

?
通过注释可以看到默认情况下当我们进行put或者delete操作的时候,服务器是拒绝访问的,所以想向服务器上传文件必须将readonly属性设置为false。

?
3. 在文件服务器上创建文件存储目录



在webapp下创建一个upload目录,为了防止找不到目录,在空目录下随便添加一个文件。

4. controller代码

?
5. 页面代码

需要回显就需要通过ajax来实现图片上传,这里使用的是jquery.form.js这个插件

jsp代码:

?
js代码:

?
6. 常见错误

403 则是conf/web.xml中没有添加readonly为false的配置

409 : com.sun.jersey.api.client.UniformInterfaceException:

PUT http://localhost:8888/mall-file/upload/20170115104302348740.jpg returned a response status of 409 Conflict

确保项目部署在8888端口下并启动成功,确保项目中存在upload目录。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: