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

wordpress 安全密钥天津搜索引擎seo

wordpress 安全密钥,天津搜索引擎seo,如何推销网站,西安网站建设创意目录 响应数据类型: 一、自动 JSON 响应 1 实现解析 二、文件下载 1 核心实现 2 优化与问题 响应数据类型: 一、自动 JSON 响应 1 实现解析 RestController 作用 类注解,自动将方法返回值序列化为 JSON(无需 ResponseBody …

目录

响应数据类型:

一、自动 JSON 响应

1 实现解析

二、文件下载

1 核心实现

2 优化与问题


响应数据类型:

一、自动 JSON 响应

1 实现解析
  1. @RestController 作用

    • 类注解,自动将方法返回值序列化为 JSON(无需 @ResponseBody 注解)。

    • 底层依赖 HttpMessageConverter(如 Jackson 库)。

  2. emailUsers 对象封装

    • 创建 POJO 实例并填充属性,Spring 自动转换属性名为 JSON 字段(如 account → "account")。

    • 复杂属性(如 String[] hobby)会被处理为 JSON 数组。

  3. 适用场景

    • 快速构建 RESTful API,返回结构化数据(如查询用户信息)。

    • 无需手动处理响应头或内容协商。

    // 会自动将返回值封装成JSON格式返回给客户端@RequestMapping("/request01")public emailUsers handleRequest() {emailUsers emailUser = new emailUsers();emailUser.setAccount("zhangsan");emailUser.setPw("123456");emailUser.setGender("男");emailUser.setHid("1");emailUser.setPlace("北京");emailUser.setOther("无");emailUser.setHobby(new String[]{"打球", "看电影" });System.out.println(emailUser);return emailUser;}

二、文件下载

1 核心实现
  1. ResponseEntity<InputStreamResource>

    • 封装响应实体,精确控制状态码、头部和正文。

    • InputStreamResource 将文件流包装为响应体,避免直接加载文件到内存。

  2. 关键配置

    • 文件名编码URLEncoder.encode() 解决中文乱码。

    • 内容类型MediaType.APPLICATION_OCTET_STREAM 表示二进制流。

    • 内容长度contentLength() 声明文件大小(非必须,但利于浏览器进度显示)。

    • 下载头Content-Disposition 触发浏览器下载行为。

2 优化与问题
  1. 大文件处理

    • 问题inputStream.readAllBytes() 会将文件全部读入内存,大文件易导致 OOM。

    • 解决:直接传递 InputStreamResource 流式返回,无需预读字节。

  2. 资源关闭问题

    • 风险inputStream.close() 后仍返回 InputStreamResource,可能导致流关闭异常。

    • 建议:使用 try-with-resources 或确保流在响应结束后关闭(如通过 FileSystemResource 自动管理)。

    /*** 文件下载* HttpEntity:拿到整个响应数据(响应头,响应体,状态码)* 1 文件名中文会乱码* 2 文件太大会内存溢出*/@RequestMapping("/request02")public ResponseEntity<InputStreamResource> handleRequest02() throws IOException {FileInputStream inputStream = new FileInputStream("D:\\test.txt");byte[] bytes = inputStream.readAllBytes();//解决中文乱码String encode = URLEncoder.encode("文本.txt", StandardCharsets.UTF_8);//解决文件太大内存溢出InputStreamResource resource = new InputStreamResource(inputStream);inputStream.close();return ResponseEntity.ok()//文件类型.contentType(MediaType.APPLICATION_OCTET_STREAM)//内容大小.contentLength(inputStream.available())//内容处理方式.header("Content-Disposition", "attachment;filename=" + encode).body(resource);}

http://www.dtcms.com/wzjs/171381.html

相关文章:

  • 建设网站的意义作用是什么意思营销策划方案公司
  • 残联网站建设自己创建个人免费网站
  • 用台式机做网站服务器如何在百度做推广
  • 汽车之家网站是谁做的百度最新财报
  • 番禺网站建设服务代做百度首页排名价格
  • 网站建设域名跳转博客安康seo
  • 改革开放40周年网站发展建设seo课程培训班
  • asp制作网站教程广州从化发布
  • 贵州省遵义市人民政府网站免费个人网页制作
  • 长沙市建站网址链接生成器
  • 张家港做网站广告公司怎么提高百度关键词排名
  • 网站制作教程设计院晚上网站推广软件免费版
  • 一流的网站建设公司交易平台官网
  • 奉贤免费网站建设站长工具seo综合查询怎么使用的
  • 信息公开和网站建设工作总结关键词优化排名详细步骤
  • 免费网站源码模板下载百度关键词排名联系方式
  • 阿里巴巴做网站接单几率计算机培训
  • 网站要咋建立百度输入法免费下载
  • 上海百姓网免费发布信息网北京seo推广外包
  • 做网站什么科目目前引流最好的平台
  • 有了域名怎样做网站北京搜索优化排名公司
  • 做网站开发的公司免费个人自助建站
  • 免费python全套教程网络营销策略优化
  • 湖南网站建设哪家好友情链接查询工具
  • 网站后台 刷新博客营销
  • 网销可以做推广的网站百度搜索推广优化师工作内容
  • 做网站那个好智能建站模板
  • 国外网站大全帝国cms模板河南推广网站
  • php动态网站开发实训心得免费发布推广信息网站
  • 有哪些可以免费做视频的网站16888精品货源入口