SSM视频教程第4-3节:SpringMVC整合FastDFS实现文件上传下载
在Java文件服务器 FastDFS 的搭建教程和使用 Nginx 访问 FastDSF 文件服务器中我们已经在 搬瓦工Linux 上安装部署了 fastdfs,并且可以用 Nginx 访问了。
那么接下来就在我们的项目中使用 fastdfs 吧。
下载fastdfs-client-java
安装依赖fastdfs-client-java
使用 maven 将 fastdfs-client-java 安装到 maven 仓库之后进行依赖。
创建 fastdfs 客户端
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62
| public class FastDFSClient {
private static StorageClient1 storageClient1 = null;
static { try { String classPath = new File(FastDFSClient.class.getResource("/").getFile()).getCanonicalPath(); String CONF_FILENAME = classPath + File.separator + "conf" + File.separator + "fdfs_client.conf"; ClientGlobal.init(CONF_FILENAME); TrackerClient trackerClient = new TrackerClient(ClientGlobal.g_tracker_group); TrackerServer trackerServer = trackerClient.getConnection(); StorageServer storageServer = trackerClient.getStoreStorage(trackerServer); storageClient1 = new StorageClient1(trackerServer, storageServer); } catch (Exception e) { System.out.println(e); } }
public static String uploadFile(InputStream fis, String fileName) { try { NameValuePair[] meta_list = null;
byte[] file_buff = null; if (fis != null) { int len = fis.available(); file_buff = new byte[len]; fis.read(file_buff); }
String fileid = storageClient1.upload_file1(file_buff, getFileExt(fileName), meta_list); return fileid; } catch (Exception ex) { return null; } finally { if (fis != null) { try { fis.close(); } catch (IOException e) { System.out.println(e); } } } }
private static String getFileExt(String fileName) { if (StringUtils.isBlank(fileName) || !fileName.contains(".")) { return ""; } else { return fileName.substring(fileName.lastIndexOf(".") + 1); } } }
|
SpringMVC添加文件上传的bean
1 2 3
| <!-- 文件上传 --> <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver" p:defaultEncoding="UTF-8" > </bean>
|
接着就可以使用Cotroller书写文件上传了。
项目模块依赖补充
安装一些通用模块:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| <commons-fileupload>1.3.1</commons-fileupload> <commons-io>2.2</commons-io> <commons-lang3>3.1</commons-lang3>
<dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>${commons-fileupload}</version> </dependency>
<dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>${commons-io}</version> </dependency>
<dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>${commons-lang3}</version> </dependency>
|
参考
相关
Java文件服务器 FastDFS 的搭建教程
使用 Nginx 访问 FastDSF 文件服务器
SSM视频教程目录
在公众号「帅彬老仙」发送「帅书」领取我写的技术电子书,转载请注明出处:
wistbean