栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

SpringMVC--文件上传,java面试问项目的开发流程

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

SpringMVC--文件上传,java面试问项目的开发流程

springmvc 传统方式的文件上传

传统方式上传文件,我们上传的文件和访问的应用存在于同一台服务器上,并且上传完成之后,浏览器可能跳转。

编写 jsp 页面

传统文件上传

选择文件:

编写控制器

@Controller

@RequestMapping("/user")

public class UserController {

@RequestMapping("/fileupload1")

public String fileupload1(HttpServletRequest request) throws Exception {

System.out.println(“文件上传”);

//使用fileupload组件完成文件上传

String path=request.getSession().getServletContext().getRealPath("/uploads/");

System.out.println(path);

//判断该路径是否存在

File file=new File(path);

if(!file.exists()){

//创建文件夹

file.mkdirs();

}

//解析request对象,获取上传文件项

DiskFileItemFactory factory=new DiskFileItemFactory();

ServletFileUpload upload=new ServletFileUpload(factory);

//解析request

List items=upload.parseRequest(request);

//遍历

for(FileItem item:items){

//进行判断,当前item对象是否是上传文件项

if(item.isFormField()){

//说明普通表单项

}else{

//说明上传文件项

//获取上传文件的名称

String filename=item.getName();

//把文件名称设置成唯一值,uid

String uuid=UUID.randomUUID().toString().replace("-","");

filename=uuid+"_"+filename;

//完成文件上传

item.write(new File(path,filename));

//删除临时文件

item.delete();

}

}

return “success”;

}

}

SpringMVC方式文件上传

在springmvc.xml中配置文件解析器

jsp页面

SpringMVC方式文件上传

选择文件:

编写控制器

@Controller

@RequestMapping("/user")

public class UserController {

@RequestMapping("/fileupload2")

public String fileupload2(HttpServletRequest request, MultipartFile upload) throws Exception {

System.out.println(“springMVC文件上传”);

//使用fileupload组件完成文件上传

String path=request.getSession().getServletContext().getRealPath("/uploads/");

System.out.println(path);

//判断该路径是否存在

File file=new File(path);

if(!file.exists()){

//创建文件夹

file.mkdirs();

}

//获取上传文件的名称

String filename=upload.getOriginalFilename();

//把文件名称设置成唯一值,uid

String uuid=UUID.randomUUID().toString().replace("-","");

filename=uuid+"_"+filename;

//完成文件上传

upload.transferTo(new File(path,filename));

return “success”;

}

}

springmvc 跨服务器方式的文件上传

分服务器的目的:在实际开发中,我们会有很多处理不同功能的服务器。分服务器处理可以让服务器各司其职,从而提高我们项目的运行效率。

不同类型的服务器

  • 应用服务器:负责部署我们的应用

  • 数据库服务器:运行我们的数据库

  • 缓存和消息服务器:负责处理大并发访问的缓存和消息

  • 文件服务器:负责存储用户上传文件的服务器。

代码实现

添加sun公司提供的跨服务器的相关依赖

com.sun.jersey

jersey-core

1.18.1

com.sun.jersey

jersey-client

1.18.1

准备两个 tomcat 服务器,并创建一个用于存放图片的 web 工程,在文件服务器的 tomcat 配置中加入,允许读写操作。

文件位置:

加入内容:接收文件的目标服务器可以支持写入操作

![在这里插入图片描述](https://img-blog.csdnimg.cn/20201026222536684.png?x-oss-process=image/watermark,type_ZmFu

《一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》

【docs.qq.com/doc/DSmxTbFJ1cmN1R2dB】 完整内容开源分享

Z3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0x6eTQxMDk5Mg==,size_16,color_FFFFFF,t_70#pic_left)

编写 jsp 页面

名称:

图片:

在springmvc.xml中配置文件解析器

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/667180.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号