fastdfs 图片服务器 使用java端作为客户端上传图片
之前有说道搭建fastdfs作为图片服务器,但是没有说明如何真正在代码里调用,那么今天大致讲一下,如何使用java客户端进行上传
首先你得要有一个客户端,导入到eclipse中即可

git地址如下:
https://github.com/leechenxiang/fastdfs-client-java
js:
$(function () {
$('#fileupload').fileupload({
dataType: 'json',
done: function (e, data) {
console.log(data);
if (data.result.status != "200") {
alert(data.result.msg);
} else {
$.each(data.result.data, function (index, file) {
$("#lee").html("<a href='" + file.url + "' target='_blank'><img src='" + file.url + "' width='80' hight='80'></img></a>");
$("#picUrl").attr("value", file.urlDB);
});
}
},
progressall: function (e, data) {
var progress = parseInt(data.loaded / data.total * 100, 10);
$('#progress .bar').css(
'width',
progress + '%'
);
},
dropZone: $('#dropzone')
});
});
html:
<input id="fileupload" type="file" name="files[]" data-url="/file/upload.action" multiple>
<div id="dropzone" class="fade well">Drop files here</div>
<div id="progress" class="progress">
<div class="bar" style="width: 0%;"></div>
</div>
<div id="lee"></div>
controller:
@RequestMapping(value="/upload", method = RequestMethod.POST)
@ResponseBody
public LeeJSONResult upload(MultipartHttpServletRequest request, HttpServletResponse response) throws Exception { List<PictureResult> picList = new ArrayList<PictureResult>(); Iterator<String> itr = request.getFileNames();
MultipartFile mpf = null;
while (itr.hasNext()) {
mpf = request.getFile(itr.next());
PictureResult pic = pictureService.uploadPic(mpf);
picList.add(pic);
} return LeeJSONResult.ok(picList);
}
service:
@Value("${IMAGE_SERVER_BASE_URL}")
private String IMAGE_SERVER_BASE_URL;
@Value("${SERVER_PATH}")
private String SERVER_PATH;
@Override
public PictureResult uploadPic(MultipartFile picFile) {
PictureResult result = new PictureResult();
// 判断图片是否为空
if (picFile.isEmpty()) {
result.setError(YesOrNo.YES.value);
result.setMessage("图片为空");
return result;
}
// 上传到图片服务器
try {
// 取图片扩展名
String originalFilename = picFile.getOriginalFilename();
// 取扩展名不要“.”
String extName = originalFilename.substring(originalFilename.lastIndexOf(".") + 1);
FastDFSClient client = new FastDFSClient("classpath:resource/client.conf");
String url = client.uploadFile(picFile.getBytes(), extName);
// 把url响应给客户端
result.setError(YesOrNo.NO.value);
result.setUrlDB(url);
result.setUrl(IMAGE_SERVER_BASE_URL + url);
} catch (Exception e) {
e.printStackTrace();
result.setError(YesOrNo.YES.value);
result.setMessage("图片上传失败");
}
return result;
}
最后配置:

tracker_server=192.168.1.188:22122

fastdfs 图片服务器 使用java端作为客户端上传图片的更多相关文章
- java连接Fastdfs图片服务器上传失败的解决方法
照着视频上做,但是却连接不了虚拟机linux上的图片服务器,估计是linux防火墙的问题(这个实在是神烦,前面有好几次连接不了都是因为linux防火墙),果不其然,关闭即可. Linux关闭防火墙的命 ...
- FastDFS图片服务器搭建
*FastDFS图片服务器搭建准备:1.需要libfastcommon安装包 选择最新稳定版(libfastcommon-1.0.36.tar.gz)2.需要FastDFS安装包 选择最新稳定版(fa ...
- FastDFS图片服务器(分布式文件系统)学习。
参考:https://blog.csdn.net/hiqingtian/article/details/79413471 https://blog.csdn.net/sinat_40399893/ar ...
- [转帖]FastDFS图片服务器单机安装步骤
FastDFS图片服务器单机安装步骤 https://www.cnblogs.com/yuesf/p/11847103.html 前面已经讲 一张图秒懂微服务的网络架构,通过此文章可以了解FastDF ...
- FastDFS图片服务器java后台的简单调用
工具类: package com.liveyc.common.fdfs; import org.apache.commons.io.FilenameUtils; import org.csource. ...
- 分享知识-快乐自己:FastDFS 图片服务器的搭建
使用一台虚拟机来模拟,只有一个Tracker.一个Storage服务,配置nginx访问图片. 1):安装依赖包 yum -y install zlib zlib-devel pcre pcre-de ...
- FastDFS图片服务器单机安装步骤
前面已经讲 一张图秒懂微服务的网络架构,通过此文章可以了解FastDFS组件中单机安装流程. 单机版架构图 以下为单机FastDFS安装步骤 一.环境准备 CentOS 7.X libfastcomm ...
- FastDFS图片服务器单机安装步骤(修订版)
前面已经讲 一张图秒懂微服务的网络架构,通过此文章可以了解FastDFS组件中单机安装流程. 单机版架构图 以下为单机FastDFS安装步骤 一.环境准备 CentOS 7.X libfastcomm ...
- FastDFS图片服务器
首先要转一个FastDFS,这个很难装.一般由运维人员安装. git项目fastdfs-client-java由happy fish开发的,down下来后import到项目中maven install ...
随机推荐
- Oracle Data Integrator 12c-第一个映射
一.创建"项目" 设计器->项目,点击插入项目图标, 在项目对话框的"定义"标签下输入项目名称如ODI_Exercise ,保存 二.导入知识模块 项目→ ...
- 〖Linux〗Ubuntu设定Proxy及忽略Proxy
1. 设定代理:. ~/.proxyenv #!/bin/sh # for terminal export proxyserveraddr=123.123.123.123 export proxyse ...
- 网站流量分析指标-PV/UV/PR/ip分析及区别
1.什么是pv? PV(page view),即页面浏览量,或点击量;通常是衡量一个网络新闻频道或网站甚至一条网络新闻的主要指标. 高手对pv的解释是,一个访问者在24小时(0点到24点)内到底看了你 ...
- 十问Android NFC手机上的卡模拟(转)
1, 问:能否在AndroidNFC手机上实现卡模拟? 答:在技术上可行,但是,对一般开发人员来讲,目前看来仅仅是技术上可行:( 2, 问:具体如何实现呢? 答:有两种方式:一种是基于硬件的,被称 ...
- Kubernetes滚动更新介绍及使用-minReadySeconds
滚动升级Deployment 现在我们将刚刚保存的yaml文件中的nginx镜像修改为 nginx:1.13.3,然后在spec下面添加滚动升级策略: 1 2 3 4 5 6 7 minReady ...
- ios中自定义button
自定义button #import <UIKit/UIKit.h> #define KFont 15 @interface DIYButton : UIButton @property(n ...
- Spring4+Hibernate4事务小记
学习Spring+Hibernate,非常强大的框架,为了追新,就直接从最高版本开始学习了,这要冒很大的风险,因为网上可查到的资料大多是针对旧版本的,比如Spring3,Hibernate3. 根据我 ...
- Python实现鸢尾花数据集分类问题——基于skearn的NaiveBayes
Python实现鸢尾花数据集分类问题——基于skearn的NaiveBayes 代码如下: # !/usr/bin/env python # encoding: utf-8 __author__ = ...
- 看过这两张图,就明白 Buffer 和 Cache 之间区别
Buffer常见的是这个: 对,就是铁道端头那个巨大的弹簧一类的东西.作用是万一车没停住,撞弹簧上减速慢,危险小一些.叫缓冲. Cache常见的是这个: 没错,就是一种保管箱.看到右边那个被锈掉的Fo ...
- LVS基本原理
LVS基本原理 简介 负载调度器.真实服务器群节点一起被称为LVS.LVS负载调度器(有时也称为负载平衡器),接收所服务的所有接入服务集群的请求,并决定集群中的哪个节点应该回复其请求. 1)负载调度器 ...