fastdfs-client-java-1.2.5.jar
fastdfs-client-java-1.2.5.jar是一个java程序的jar包,在java的项目中会经常使用这个jar包,它的使用可以说是很普遍,有了fastdfs-client-java-1.2.5.jar包会让开发更容易进行。使用实例
编译安装成功后可以在我们本地的maven仓库看到fastdfs-client-java的jar包:
最后在我们项目的pom中添加fastdfs-client-java的坐标信息就ok了:
文件上传
首先来实现文件上传,fastdfs-client-java的上传是通过传入一个byte[ ]来完成的,简单看一下源码:
public string[] upload_file(byte[] file_buff, string file_ext_name,
namevaluepair[] meta_list) throws ioexception, myexception{
final string group_name = null;
return this.upload_file(group_name, file_buff, 0, file_buff.length, file_ext_name, meta_list);
}
如上所示,暂且不再深入研究原理,此处我们知道需要一个byte[ ]类型的参数就可以了,而springmvc的文件上传用到的multipartfile对象可以直接通过getbytes方法得到文件的byte[ ],也就是commonsmultipartfile类中的getbytes(),源码如下:
@override
public byte[] getbytes() {
if (!isavailable()) {
throw new illegalstateexception(file has been moved - cannot be read again);
}
byte[] bytes = this.fileitem.get();
return (bytes != null ? bytes : new byte[0]);
}
那么接下来我们就知道如何上传了,当然首先需要做一些简单的封装,这里把文件上传的相关属性封装在了一个接口中,需要用到文件上传的相关实体或者工具类直接实现这个接口即可:
public interface filemanagerconfig extends serializable {
public static final string file_default_author = wangliang;
public static final string protocol = http://;
public static final string separator = /;
public static final string tracker_ngnix_addr = 192.168.0.68;
public static final string tracker_ngnix_port = ;
public static final string client_config_file = fdfs_client.conf;
}