【Web后端】实现文件上传

  • 表单必须使用post提交 ,enctype 必须是multipart/form-data
  • 在Servlet上填加注解 @MultipartConfig
  • location :默认情况下将存储文件的目录,默认值为""。
  • maxFileSize :允许上传文件的最大大小,其值以字节为单位。 默认值为-1L表示无限制
  • maxRequestSize :multipart/form-data数据请求所允许的最大大小。 默认值为-1L,表示无限制。
  • 执行上传处理
java 复制代码
//获取当前工程真实路径
ServletContext context=this.getServletContext();
String realPath = context.getRealPath("/");
String path=realPath+"upload";
File dir=new File(path);
dir.mkdirs();//创建目录
//完成上传处理
Part part=request.getPart("pic");
//获取要上传文件的原始名
String fileName=part.getSubmittedFileName();
//截取出扩展名
String extName=fileName.substring(fileName.lastIndexOf("."));
//生成文件名前缀
String prefix= String.valueOf(System.currentTimeMillis());
fileName=prefix+extName;
File file=new File(dir,fileName);
//上传处理
part.write(file.getAbsolutePath());
info.setPic("/upload/"+fileName);
service.insert(info);
相关推荐
小比卡丘33 分钟前
C语言进阶版第17课—自定义类型:联合和枚举
android·java·c语言
xmh-sxh-131439 分钟前
java 数据存储方式
java
liu_chunhai1 小时前
设计模式(3)builder
java·开发语言·设计模式
ya888g1 小时前
GESP C++四级样题卷
java·c++·算法
【D'accumulation】2 小时前
令牌主动失效机制范例(利用redis)注释分析
java·spring boot·redis·后端
小叶学C++2 小时前
【C++】类与对象(下)
java·开发语言·c++
2401_854391082 小时前
高效开发:SpringBoot网上租赁系统实现细节
java·spring boot·后端
Cikiss2 小时前
微服务实战——SpringCache 整合 Redis
java·redis·后端·微服务
wxin_VXbishe2 小时前
springboot合肥师范学院实习实训管理系统-计算机毕业设计源码31290
java·spring boot·python·spring·servlet·django·php
Cikiss2 小时前
微服务实战——平台属性
java·数据库·后端·微服务