目錄
1.fastDFS是什麼?
百度百科版:FastDFS是一個開源的輕量級分佈式文件系統,它對文件進行管理,功能包括:文件存儲、文件同步、文件訪問(文件上傳、文件下載)等,解決了大容量存儲和負載均衡的問題。特別適合以文件爲載體的在線服務,如相冊網站、視頻網站等等。
大白話版:一個全自動存、取文件的服務器。
2.fastDFS安裝過程
在Linux中安裝fastDFS需要一系列的配置,對於一個不會Linux系統的人來說確實是有點望而生畏。
幸好,網上有那種已經配置好了的虛擬機,只需要下載後直接導入vm即可。如果你想自己在Linux安裝,可以看其他相關的安裝教程。
我就是用的直接配置好的centos虛擬機,裏面已經安裝好了fastDFS!
①首先安裝一個軟件VM(vmware workstation)
②打開VM,導入已經配置好的虛擬機
③在導入了虛擬機之後,在“編輯”-->“虛擬網絡編輯器”,設置NAT模式(根據自己在fastdfs中的配置而定)
截止現在,fastDFS就已經安裝好了!!如果要登錄虛擬機,賬戶是root,密碼itcast。
3.一個應用小demo
接下來在Java中實現文件上傳。
打開fastDFS虛擬機,去cmd裏面ping一下確保是連通的。
首先創建一個配置文件
tracker_server=192.168.25.133:22122
然後pom.xml配置依賴
<!-- 文件上傳 -->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-io</artifactId>
<version>1.3.2</version>
</dependency>
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.3.1</version>
</dependency>
<dependency>
<groupId>fastdfs_client</groupId>
<artifactId>fastdfs_client</artifactId>
<version>1.25</version>
</dependency>
上傳一張本地的圖片。
public void upload() throws MyException {
String file = "C:\\Users\\Administrator\\Desktop\\表情包數據\\1.jpg";
try {
ClientGlobal.init(this.getClass().getResource("/").getPath() + "conf/fastDFS.conf");
TrackerClient trackerClient = new TrackerClient();
TrackerServer trackerServer = trackerClient.getConnection();
StorageServer storageServer = null;
StorageClient1 storageClient = new StorageClient1(trackerServer, storageServer);
//上傳圖片並獲取在服務器的地址
String path = storageClient.upload_file1(file, "jpg", null);
String url = "http://192.168.25.133/" + path;
System.out.println(url);
} catch (IOException e) {
e.printStackTrace();
}
複製返回的地址,打開瀏覽器,可以查看到上傳的圖片。
大功告成!
如果想了解java實現上傳多圖片至服務器功能(html+SpringBoot+fastDFS),可以看看這篇博客。