Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
A
aroad_aqsc
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
许言琪
aroad_aqsc
Commits
f4ceea79
提交
f4ceea79
authored
5月 21, 2019
作者:
宋文杰
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix(fastdfs): fix fastdfs upload return style
上级
60967692
隐藏空白字符变更
内嵌
并排
正在显示
1 个修改的文件
包含
41 行增加
和
1 行删除
+41
-1
FileUploadController.java
.../aroad/module/common/controller/FileUploadController.java
+41
-1
没有找到文件。
src/main/java/com/elephant/framework/galaxy/aroad/module/common/controller/FileUploadController.java
浏览文件 @
f4ceea79
...
...
@@ -3,6 +3,7 @@ package com.elephant.framework.galaxy.aroad.module.common.controller;
import
com.elephant.framework.galaxy.aroad.constant.CommonConstants
;
import
com.elephant.framework.galaxy.aroad.exception.UploadFileException
;
import
com.elephant.framework.galaxy.aroad.module.codegen.response.R
;
import
com.elephant.framework.galaxy.aroad.response.UpFileResponse
;
import
com.github.tobato.fastdfs.domain.fdfs.StorePath
;
import
com.github.tobato.fastdfs.service.FastFileStorageClient
;
import
org.apache.commons.io.FilenameUtils
;
...
...
@@ -78,7 +79,7 @@ public class FileUploadController {
* @return R
*/
@PostMapping
(
"/files"
)
public
R
uploadFile
(
HttpServletRequest
request
)
throws
IOException
{
public
R
uploadFile
s
(
HttpServletRequest
request
)
throws
IOException
{
Map
<
String
,
String
>
resultMap
=
new
HashMap
<>();
//将当前上下文初始化给 CommonsMultipartResolver (多部分解析器)
CommonsMultipartResolver
multipartResolver
=
new
CommonsMultipartResolver
(
request
.
getSession
().
getServletContext
());
...
...
@@ -112,4 +113,43 @@ public class FileUploadController {
System
.
out
.
println
(
"没有上传文件"
);
return
new
R
(
CommonConstants
.
FAIL
,
"没有上传文件"
);
}
@PostMapping
(
"/file"
)
public
UpFileResponse
uploadFile
(
HttpServletRequest
request
)
throws
IOException
{
Map
<
String
,
String
>
resultMap
=
new
HashMap
<>();
//将当前上下文初始化给 CommonsMultipartResolver (多部分解析器)
CommonsMultipartResolver
multipartResolver
=
new
CommonsMultipartResolver
(
request
.
getSession
().
getServletContext
());
//检查form中是否有enctype="multipart/form-data"
if
(
multipartResolver
.
isMultipart
(
request
))
{
//将request变成多部分request
MultipartHttpServletRequest
multiRequest
=
(
MultipartHttpServletRequest
)
request
;
List
<
String
>
supportFileTypes
=
Arrays
.
asList
(
"TXT"
,
"XLS"
,
"XLSX"
,
"DOC"
,
"DOCX"
,
"PPT"
,
"PPTX"
,
"RAR"
,
"ZIP"
);
//获取multiRequest 中所有的文件名
Iterator
iter
=
multiRequest
.
getFileNames
();
while
(
iter
.
hasNext
())
{
String
name
=
iter
.
next
().
toString
();
//一次遍历所有文件
MultipartFile
file
=
multiRequest
.
getFile
(
name
);
if
(
file
!=
null
)
{
String
extension
=
FilenameUtils
.
getExtension
(
file
.
getOriginalFilename
());
if
(
StringUtils
.
isBlank
(
extension
))
{
throw
new
UploadFileException
(
"上传文件类型不支持"
);
}
if
(!
supportFileTypes
.
contains
(
extension
.
toUpperCase
()))
{
throw
new
UploadFileException
(
"上传文件类型不支持"
);
}
StorePath
storePath
=
this
.
storageClient
.
uploadFile
(
file
.
getInputStream
(),
file
.
getSize
(),
extension
,
null
);
return
new
UpFileResponse
(
file
.
getOriginalFilename
(),
storePath
.
getFullPath
());
// resultMap.put(name, storePath.getFullPath());
}
}
// return new R<>(resultMap);
}
// System.out.println("没有上传文件");
// return new R(CommonConstants.FAIL, "没有上传文件");
return
null
;
}
}
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论