Solon 的Mvc可以直接返回 DownloadedFile 或者 File 对象

@Mapping("/demo/down")
@Controller
public class DownController {
@Mapping("f1")
public DownloadedFile down() {
InputStream stream = new ByteArrayInputStream("{code:1}".getBytes(StandardCharsets.UTF_8)); //使用 InputStream 实例化
return new DownloadedFile("text/json", stream, "test.json");
} @Mapping("f2")
public DownloadedFile down12() {
byte[] bytes = "test".getBytes(StandardCharsets.UTF_8); //使用 byte[] 实例化
return new DownloadedFile("text/json", bytes, "test.txt"); } @Mapping("f3")
public File down2() {
String filePath = Utils.getResource("static/debug.htm").getFile(); return new File(filePath);
}
}

还可以通过 Context 对象的 outputAsFile 接口,直接输出下载文件

QA: Solon 怎么输出下载文件流?的更多相关文章

  1. axios 下载文件流或者预览在线pdf

    问题: 后端返回文件流,前端使用axios下载或者在线预览 下载文件流 import axios from 'axios' // 设置响应类型为blob axios.get('/api/app/xxx ...

  2. C# 输出pdf文件流在页面上显示

    1 不调用itextsharp.dll的操作 /// <summary>        /// 生成pdf流        /// </summary>        /// ...

  3. HttpURLConnection下载文件流

    package com.loan.modules; import sun.net.www.protocol.file.Handler; import java.io.*; import java.ne ...

  4. [转] 如何在ie11里使用a连接创建动态下载文件流

    [From] https://segmentfault.com/q/1010000009470664 查了资料,可以使用微软独家的msSaveBlob, 这个方法支持ie10及以上. var down ...

  5. 通过url 下载文件

    1.问题简介 通过文件的url,将文件下载到本地.文件存储的位置为:tomcat服务器的文件夹(通过读取properties文件:可看:http://www.cnblogs.com/0201zcr/p ...

  6. .NetCore之下载文件

    本篇将和大家分享的丝.NetCore下载文件,常见的下载有两种:A标签直接指向下载文件地址和post或get请求后台输出文件流的方式,本篇也将围绕这两种来分享:如果对您有好的帮助,请多多支持. 允许站 ...

  7. 使用URLConnection下载文件或图片并保存到本地

    有时候需要从网络上面下载图片到本地进行保存,代码如下: package com.jointsky.jointframe.test; import java.io.FileOutputStream; i ...

  8. 爪哇国新游记之二十八----从url指定的地址下载文件到本地

    package download; import java.io.File; import java.io.FileOutputStream; import java.io.InputStream; ...

  9. web批量下载文件到本地

    JavaWeb 文件下载功能 文件下载的实质就是文件拷贝,将文件从服务器端拷贝到浏览器端,所以文件下载需要IO技术将服务器端的文件读取到,然后写到response缓冲区中,然后再下载到个人客户端. 1 ...

  10. java+web+批量下载文件

    JavaWeb 文件下载功能 文件下载的实质就是文件拷贝,将文件从服务器端拷贝到浏览器端,所以文件下载需要IO技术将服务器端的文件读取到,然后写到response缓冲区中,然后再下载到个人客户端. 1 ...

随机推荐

  1. AJAX入门实例

    1.什么是 AJAX ? AJAX = 异步 JavaScript 和 XML. AJAX 是一种用于创建快速动态网页的技术. 通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新.这 ...

  2. MacOS X终端里SSH会话管理

    http://codelife.me/blog/2012/09/01/ssh-session-profile-management-in-terminal-of-macos-x/ 本文介绍如何在终端里 ...

  3. Semantic Kernel 将成为通向Assistants的门户

    OpenAI 也推出了让开发者更容易使用 OpenAI API 的开发方式--Assistants API.Sam Altman 表示,市面上基于 API 构建 agent 的体验很棒.比如,Shop ...

  4. null 不好,我真的推荐你使用 Optional

    "Null 很糟糕." - Doug Lea. Doug Lea 是一位美国的计算机科学家,他是 Java 平台的并发和集合框架的主要设计者之一.他在 2014 年的一篇文章中说过 ...

  5. ArmSoM-W3应用开发之安装docker

    1. 简介 RK3588从入门到精通系列专题 开发板:ArmSoM-W3 Kernel:5.10.160 OS:Debian11 本⽂介绍ArmSoM-W3在Debian11下如何安装使用docker ...

  6. 🔥🔥Java开发者的Python快速进修指南:函数进阶

    在上一篇文章中,我们讲解了函数最基础常见的用法,今天我想在这里简单地谈一下函数的其他用法.尽管这些用法可能不是非常常见,但我认为它们仍然值得介绍.因此,我将单独为它们开设一个章节,并探讨匿名函数和装饰 ...

  7. numpy数组基础

    目录 创建数组 多维数组切片 数组属性 使用数组 数组特殊运算符 索引进阶 花式索引 创建数组 在numpy中,创建数组有很多种方法,例如如下的例子: import numpy as np sws_1 ...

  8. 线性代数导论MIT第一章中的知识点

    线性代数知识点: 0.矩阵表 1.线性组合 2.向量与线性组合 3.线性组合 4.三维向量 平面向量(x, y)与3维空间的(x, y, 0)不相同! 二维空间的向量v具有两个分量v1与v2. v + ...

  9. CSS(不定时更新)

    一.使用img后的高度多了4px 由于img是行内元素,默认display: inline; 它与文本的默认行为类似,下边缘是与基线(baseline)对齐,而不是紧贴容器下边缘. 将displayp ...

  10. Detecting Unknown Encrypted Malicious Traffic in Real Time via Flow Interaction Graph Analysis

    1 前言 1.1 标题 Detecting Unknown Encrypted Malicious Traffic in Real Time via Flow Interaction Graph An ...