FastDFS图片服务器

Posted lonelyxmas

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了FastDFS图片服务器相关的知识,希望对你有一定的参考价值。

原文:FastDFS图片服务器

首先要转一个FastDFS,这个很难装。一般由运维人员安装。

git项目fastdfs-client-java由happy fish开发的,down下来后import到项目中maven install到本地仓库即可

package com.common.utils;

import org.csource.common.NameValuePair;
import org.csource.fastdfs.ClientGlobal;
import org.csource.fastdfs.StorageClient1;
import org.csource.fastdfs.StorageServer;
import org.csource.fastdfs.TrackerClient;
import org.csource.fastdfs.TrackerServer;

/*
* 工具类
*/
public class FastDFSClient { private TrackerClient trackerClient = null; private TrackerServer trackerServer = null; private StorageServer storageServer = null; private StorageClient1 storageClient = null; public FastDFSClient(String conf) throws Exception { if (conf.contains("classpath:")) { conf = conf.replace("classpath:", this.getClass().getResource("/").getPath()); } ClientGlobal.init(conf); trackerClient = new TrackerClient(); trackerServer = trackerClient.getConnection(); storageServer = null; storageClient = new StorageClient1(trackerServer, storageServer); } /** * 上传文件方法 * <p>Title: uploadFile</p> * <p>Description: </p> * @param fileName 文件全路径 * @param extName 文件扩展名,不包含(.) * @param metas 文件扩展信息 * @return * @throws Exception */ public String uploadFile(String fileName, String extName, NameValuePair[] metas) throws Exception { String result = storageClient.upload_file1(fileName, extName, metas); return result; } public String uploadFile(String fileName) throws Exception { return uploadFile(fileName, null, null); } public String uploadFile(String fileName, String extName) throws Exception { return uploadFile(fileName, extName, null); } /** * 上传文件方法 * <p>Title: uploadFile</p> * <p>Description: </p> * @param fileContent 文件的内容,字节数组 * @param extName 文件扩展名 * @param metas 文件扩展信息 * @return * @throws Exception */ public String uploadFile(byte[] fileContent, String extName, NameValuePair[] metas) throws Exception { String result = storageClient.upload_file1(fileContent, extName, metas); return result; } public String uploadFile(byte[] fileContent) throws Exception { return uploadFile(fileContent, null, null); } public String uploadFile(byte[] fileContent, String extName) throws Exception { return uploadFile(fileContent, extName, null); } } /** * 测试 */ public class FastDFSTest { @Test public void testFileUpload() throws Exception { // 1、加载配置文件,配置文件中的内容就是tracker服务的地址。 ClientGlobal.init("D:\\\\Programmer_QY\\\\eclipse-jee-mars-2-win32-x86_64\\\\workspace\\\\e3-manager-web\\\\src\\\\main\\\\resources\\\\conf\\\\client.conf"); // 2、创建一个TrackerClient对象。直接new一个。 TrackerClient trackerClient = new TrackerClient(); // 3、使用TrackerClient对象创建连接,获得一个TrackerServer对象。 TrackerServer trackerServer = trackerClient.getConnection(); // 4、创建一个StorageServer的引用,值为null StorageServer storageServer = null; // 5、创建一个StorageClient对象,需要两个参数TrackerServer对象、StorageServer的引用 StorageClient storageClient = new StorageClient(trackerServer, storageServer); // 6、使用StorageClient对象上传图片。 // 扩展名不带“.” String[] strings = storageClient.upload_file("G:\\\\秋雨\\\\相机\\\\小猪\\\\QQ图片20160501233001.jpg", "jpg", null); // 7、返回数组。包含组名和图片的路径。 for (String string : strings) { System.out.println(string); } } @Test public void textFastDfsClient() throws Exception{ FastDFSClient fastDFSClient = new FastDFSClient("D:\\\\Programmer_QY\\\\eclipse-jee-mars-2-win32-x86_64\\\\workspace\\\\e3-manager-web\\\\src\\\\main\\\\resources\\\\conf\\\\client.conf"); String result = fastDFSClient.uploadFile("G:\\\\秋雨\\\\相机\\\\头像\\\\3226-150PR30508-52.jpg"); System.out.println(result); } }

客户端返回

技术分享图片

浏览器访问

技术分享图片

 




以上是关于FastDFS图片服务器的主要内容,如果未能解决你的问题,请参考以下文章

FastDFS图片服务器

FastDFS图片服务器搭建流程:

FastDFS图片服务器

FastDFS图片服务器单机安装步骤

fastDFS安装使用

fastDFS安装使用