实际上这是个 HDFS 的工具类部分代码。 首先
public static Configuration configuration = null;
public static FileSystem fileSystem = null;
static {
try {
if (null == configuration) {
configuration = new Configuration();
}
if (null == fileSystem) {
fileSystem = FileSystem.get(URI.create(RockyConstants.HDFS_PATH), configuration);
}
} catch (IOException e) {
e.printStackTrace();
}
}
/**
* 整文件存入 HDFS
*
* @throws Exception
*/
public static boolean putHDFS(String filePath, byte[] info) {
try {
FSDataOutputStream writer = fileSystem.create(
new Path(filePath), true);
writer.write(info);
writer.flush();
writer.close();
} catch (IOException e) {
e.printStackTrace();
return false;
}
return true;
}
/**
* 断点续传存入
* @throws IOException
*/
public static void continueUpload(String targetPath, byte[] info) throws IOException{
Path fsPath = new Path(targetPath);
// 第一次
if (!fileSystem.exists(fsPath)) {
putHDFS(targetPath,info);
} else {
// 续传
FSDataOutputStream writer = fileSystem.append(fsPath);
writer.write(info);
writer.flush();
writer.close();
}
}
God has given me a gift. Only one. I am the most complete fighter in the world. My whole life, I have trained. I must prove I am worthy of someting. rocky_24