java fastdbs存檔案(實測)
目的:檔案上傳到fastdbs伺服器上,需要的工具類和配置檔案,及其呼叫方法(實測)
配置檔案fast_client.conf
# connect timeout in seconds # default value is 30s connect_timeout=30 # network timeout in seconds # default value is 30s network_timeout=60 # the base path to store log files base_path=/home/fastdfs # tracker_server can ocur more than once, and tracker_server format is # "host:port", host can be hostname or ip address tracker_server=10.120.112.95:22122 //地址 #tracker_server=10.120.112.95:22122 #standard log level as syslog, case insensitive, value list: ### emerg for emergency ### alert ### crit for critical ### error ### warn for warning ### notice ### info ### debug log_level=info # if use connection pool # default value is false # since V4.05 use_connection_pool = false # connections whose the idle time exceeds this time will be closed # unit: second # default value is 3600 # since V4.05 connection_pool_max_idle_time = 3600 # if load FastDFS parameters from tracker server # since V4.05 # default value is false load_fdfs_parameters_from_tracker=false # if use storage ID instead of IP address # same as tracker.conf # valid only when load_fdfs_parameters_from_tracker is false # default value is false # since V4.05 use_storage_id = false # specify storage ids filename, can use relative or absolute path # same as tracker.conf # valid only when load_fdfs_parameters_from_tracker is false # since V4.05 storage_ids_filename = storage_ids.conf #HTTP settings http.tracker_server_port=80 #use "#include" directive to include HTTP other settiongs ##include http.conf
工具類
import org.apache.commons.io.FilenameUtils; import org.csource.common.NameValuePair; import org.csource.fastdfs.*; import org.springframework.core.io.ClassPathResource; public class FastDFSUtil { public static String uploadFile(byte[] file, String name, long size) throws Exception { ClassPathResource resource = new ClassPathResource("fast_client.conf"); ClientGlobal.init(resource.getClassLoader().getResource("fast_client.conf").getPath()); //連線跟蹤器 TrackerClient trackerClient = new TrackerClient(); //連線此物件中封裝了(Stoage的IP地址) TrackerServer trackerServer = trackerClient.getConnection(); //連線儲存節點 StorageServer storageServer = null; StorageClient1 storageClient1 = new StorageClient1(trackerServer,storageServer); //上傳檔案 String ext = FilenameUtils.getExtension(name); NameValuePair[] meta_list = new NameValuePair[3]; meta_list[0] = new NameValuePair("filename",name); meta_list[1] = new NameValuePair("fileext",ext); meta_list[2] = new NameValuePair("filesize",String.valueOf(size)); String path = storageClient1.upload_file1(file, ext, meta_list); return path; } }
程式呼叫
相關推薦
java fastdbs存檔案(實測)
目的:檔案上傳到fastdbs伺服器上,需要的工具類和配置檔案,及其呼叫方法(實測)配置檔案fast_client.conf# connect timeout in seconds # default
Java內存模型(二)——重排序
序列 依賴性 種類 如果 禁止 加載 runtime 屬於 style 一、重排序 重排序是指為了提高程序的執行效率,編譯器和處理器常常會對語句的執行順序或者指令的執行順序進行重排。 編譯器優化的重排序:編譯器在不改變單線程程序語義的前提下,可以重新安排語句的執行順序
Java內存模型(JMM)中的happens-before
ati img 執行 簡單 pen 性能 .cn style 程序員 happens-before是JMM中最核心的概念,對於Java程序員來說,理解happens-before是理解JMM的關鍵 。 1.JMM的設計 首先,來看看JMM的設計意圖。從JMM的設計者
深入理解Java內存模型(五)——鎖
運行 包含 示意圖 支持 ole img api turn before 本文轉自:http://www.infoq.com/cn/articles/java-memory-model-5 鎖的釋放-獲取建立的happens before 關系 鎖是java並發編程中最重要
深入理解Java內存模型(三)——順序一致性
內存空間 寫入 方便 語言 body 一半 同步 java語言 post 本文轉自:http://www.infoq.com/cn/articles/java-memory-model-3 數據競爭與順序一致性保證 當程序未正確同步時,就會存在數據競爭。java內存模型規範
深入理解Java內存模型(四)——volatile
繼續 表現 可能 class 之前 art 其他 reader int 本文轉自:http://www.infoq.com/cn/articles/java-memory-model-4 volatile的特性 當我們聲明共享變量為volatile後,對這個變量的讀/寫將會
java內存模型(二)深入理解java內存模型的系列好文
總結 nal href ola down 深入理解 ati markdown vol 深入理解java內存模型(一)——基礎深入理解java內存模型(二)——重排序深入理解java內存模型(三)——順序一致性深入理解java內存模型(四)——volatile深入理解java
java呼叫批檔案(.bat)並動態傳參
java程式碼: package test; import java.io.IOException; public class TestMain { public static void main(String [] args) { try { Proc
JAVA基礎之檔案(File)
File類 構造: public class File extends Object implements Serializable, Comparable File類就是檔案和目錄路徑名的抽象表示形式。 通過將給定路徑名字串轉換為抽象路徑名來建立一個新 File 例項,也就
Java Servlet下載檔案(二)
import java.io.File;import java.io.FileInputStream;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;impor
Java 內存監控(一)之 jps命令
alt jps命令 dea 技術分享 命令 輸入 內存監控 沒有 options 今天看一下Java命令行工具 jps的使用 一、命令簡介 jps [ options ] [ hostid ] 不輸入 [ hostid ] 內容,則默認是本機。 二、options
Java呼叫庫檔案(JNI)(android對此有所改變)
1.準備java 程式 testdll.java,內容為: public class testdll { static { System.loadLibrary("goodluck"); //載入庫名,庫的副檔名字究竟是DLL還是SO,由系統自己判斷。
JVM自動內存管理機制——Java內存區域(下)
擴展 xmx times img gcd odi ons eve 相同 一、虛擬機參數配置 1、Java堆參數設置 a)下面是一些簡單的使用參數 其中最後一個是一個運行時參數設置的簡單實例。一般-XX是系統級別的配置(日誌信息,或者是配置使用什麽樣的垃圾回收器等
java內存模型(Java Memory Model)
ble watermark 了解 計算機 als stack lin 方法 兩個 內容導航: Java內存模型硬件存儲體系結構Java內存模型和硬件存儲體系之間的橋梁: 共享對象的可見性 競爭條件 Java內存模型規定了JVM怎樣與計算機存儲系統(RA
Java淺談數組之內存分析(二)
說明 變量賦值 com logs .info clas code new blog 引用類型的數組的初始化 1數組元素是引用時的內存分析 package com.java.array; class Person{ public int age;//年齡
Java淺談數組之內存分析(一)
靜態 引用變量 ati static ges 組元 strong 淺談 nbsp 數組的內存 1.內存中的數組 數組是一種引用內存,數組引用變量只是一個引用,數組元素和數組變量在內存裏是分開存放的。 實際的數組對象被存放在堆內存(heap)中,數組的引用變量被存儲在棧內存中
Java虛擬機系列(三)---內存溢出情況及解決方法
方法 運行時常量池溢出 超過 stack 必須 解決 字節 maxperm 描述 因為Java虛擬機內存有堆內存、方法區、虛擬機棧、本地方法棧和程序計數器五部分組成,其中程序計數器是唯一一塊不會發生內存溢出異常的內存區,所以只有四類內存區可能發生內存溢出異常,其中虛擬機棧和
Java面向對象(二):成員變量—OOP中的內存管理—構造函數
生成 類名 存在 str jdk 項目 -a 系統 show 第一節 成員變量 1.1成員變量與局部變量 成員變量:聲明在類下面,方法外面;作用於整個類中; 局部變量:聲明在方法下面,作用於方法下面。 1.2 成員變量默認值 成員變量的默認值和數組的默認值一樣:
springboot上傳下載檔案(3)--java api 操作HDFS叢集+叢集配置
只有光頭才能變強! 前一篇文章講了nginx+ftp搭建獨立的檔案伺服器 但這個伺服器宕機了怎麼辦? 我們用hdfs分散式檔案系統來解決這個問題(同時也為hadoop系列開個頭) 目錄 1、Ubuntu14.04下配置Hadoop(2.8.5)叢集環境詳解(完全分
Java程式設計師從笨鳥到菜鳥之(一百零三)java操作office和pdf檔案(一)java讀取word,excel和pd
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!