当前位置: 首页 > news >正文

郑州网站开发定制谷歌搜索入口365

郑州网站开发定制,谷歌搜索入口365,大图网,wordpress用户名在那个数据表文件下载 ResponseEntity用于控制器方法的返回值类型,该控制器方法的返回值就是响应到浏览器的响应报文。具体步骤如下: 获取下载文件的位置;创建流,读取文件;设置响应信息,包括响应头,响应体以…

文件下载

ResponseEntity用于控制器方法的返回值类型,该控制器方法的返回值就是响应到浏览器的响应报文。具体步骤如下:

  1. 获取下载文件的位置;
  2. 创建流,读取文件;
  3. 设置响应信息,包括响应头,响应体以及响应码;
  4. 返回ResponseEntity对象
@Controller
@ResponseBody
public class UpAndDownController {@RequestMapping("/test/down")public ResponseEntity<byte[]> testResponseEntity(HttpSession session) throws IOException{/*** 1. 获取文件的地址*/// 获取ServletContext对象ServletContext servletContext = session.getServletContext();// 获取服务器的中文件的真实路径String path = servletContext.getRealPath("img");System.out.println("path: " + path);  // path: D:\IdeaProject\springmvc_ResponseBody_RequestBody\target\springmvc-1.0-SNAPSHOT\imgString realPath = path + File.separator + "1.jpg";  // File.separator表示拼接符 “/” 或者“\”,方便拼接不会出错System.out.println("realPath: " + realPath);  // realPath: D:\IdeaProject\springmvc_ResponseBody_RequestBody\target\springmvc-1.0-SNAPSHOT\img\1.jpg/*** 2. 创建流,读取文件*/// 创建输入流FileInputStream is = new FileInputStream(realPath);// 创建字节数组byte[] bytes = new byte[is.available()];  // is.available: 返回从此输入流中可以读取(或跳过)的剩余字节数的估计值// 将流读到字节数组中is.read(bytes);/*** 3. 设置响应信息,包括响应头,响应体以及响应码*/// 创建HttpHeaders对象设置响应头信息MultiValueMap<String, String> headers = new HttpHeaders();// 设置要下载方式以及下载文件的名字headers.add("Content-Disposition", "attachment;filename=1.jpg");// 设置响应状态码HttpStatus statusCode = HttpStatus.OK;// 创建ResResponseEntity对象ResponseEntity<byte[]> responseEntity = new ResponseEntity<>(bytes, headers, statusCode);// 关闭输入流is.close();return responseEntity;}
}

文件上传

 文件上传要求form表单的请求方式必须为post, 并且添加属性enctype=“multipart/form-data”。SpringMVC中上传的文件封装到MultipartFile对象中,通过此对象可以获取文件相关信息。文件上传步骤如下:

  1. 添加依赖
  <dependency><groupId>commons-fileupload</groupId><artifactId>commons-fileupload</artifactId><version>1.3.1</version></dependency>
  1. 在SpringMVC的配置文件中添加配置
 <!--上传文件, id名必须为multipartResolver--><bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"></bean>

前端代码

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head><meta charset="UTF-8"><title>index</title>
</head>
<body>
<form th:action="@{/test/up}" method="post" enctype="multipart/form-data">头像: <input type="file" name="photo"><br><input type="submit" value="上传文件">
</form>
</body>
</html>

后端代码

@RequestMapping("/test/up")public String testUp(MultipartFile photo, HttpSession httpSession) throws IOException{/*** 1. 获取文件的名称*/// 获取上传文件的名称String filename = photo.getOriginalFilename();String hzName = filename.substring(filename.lastIndexOf("."));  // 得到后缀名System.out.println(hzName);  // .jpgSystem.out.println(UUID.randomUUID());filename = UUID.randomUUID().toString() + hzName;/*** 2. 创建文件的存储位置*/// 获取服务器中photo目录的路径ServletContext servletContext = httpSession.getServletContext();String photoPath = servletContext.getRealPath("photo");File file = new File(photoPath);if(!file.exists()) file.mkdir();String finalPath = photoPath + File.separator + filename;/*** 3. 文件上传*/// 实现上传功能photo.transferTo(new File(finalPath));return "success";}
http://www.15wanjia.com/news/4576.html

相关文章:

  • 网站开发技术要求sem培训班学费哪个好
  • 菏泽做网站公司搜索推广代运营
  • 微信公众号开发者中心滕州网站建设优化
  • 家具公司网站源码全网营销系统1700元真实吗
  • 美团初期是怎么建网站北京网络排名优化
  • 做网站可以用什么语言推广接单平台
  • 标志在线设计网站上海怎么做seo推广
  • 网站建设分金手指排名二八链接地址
  • 南京网站开发公司seo顾问多少钱
  • 武汉营销型网站多少钱抖音关键词排名查询工具
  • 福州网站建设外包焊工培训ppt课件
  • wordpress模板文件是哪个文件夹优化关键词的正确方法
  • 绵阳网站维护托管湖南seo网站多少钱
  • 网站正在建设中页面设置长沙网站seo收费
  • tk域名网站多少磁力链接搜索引擎2021
  • wordpress手机模板插件搜索引擎优化网站
  • 网站建设论文的部首微信小程序建站
  • 现在c 做网站用什么软件泰安网络推广培训
  • 搭建网站赚钱游戏代理怎么找渠道
  • 英文美食网站怎么做橘子seo历史查询
  • 公司提供平台seo网站推广首页排名
  • 用开源吗做的网站可以用吗深圳网站设计三把火
  • 机械行业网站模板有什么好用的搜索引擎
  • 网站正能量入口seo优化排名技术百度教程
  • 上海网站建设找思创优化手机流畅度的软件
  • 网站主页和子页怎么做南京谷歌推广
  • 爱站网关键词查询系统网络推广怎么赚钱
  • 黑马程序员吧seo公司是什么
  • 网站进行诊断北京互联网公司排名
  • 深圳网站建设怎样做公众号软文推广多少钱一篇