@RequestMapping("/public/download")
public void download(String id, HttpServletRequest request, HttpServletResponse res) throws IOException{
Attachment att = dbServices.getEntity(Attachment.class, id ) ;
String fileName = att.getFileName();
OutputSteam os = res.getOutputStream() ;
String path = att.getFileDir() + "/" + att.getPhysicalName() ;
try{
res.reset() ;
res.setHeader("Content-Disposition", "attachment;filename=" + new String(fileName.getBytes("GB2312"),"iso-8859-1"));
res.setContentType("application/octet-stream;charset=utf-8");
os.write(FileUtils.readFileToByteArray(new File(path)));
os.flush();
} finally{
if(os != null){
os.close();
}
}
}
相关推荐
在易语言中,建立HTTP连接请求是网络编程中的常见操作,主要用于与远程服务器进行数据交换,例如下载文件、提交表单数据等。本篇将详细介绍如何在易语言中实现这个功能。 首先,我们要理解HTTP(超文本传输协议)是...
在Java进行HTTP请求时,通常会遇到数据传输出现乱码的问题,尤其是在使用JSON格式传输数据,且数据中包含中文字符时更为常见。在HTTP协议中,字符编码的正确处理对于数据的正确传输至关重要。以下将详细介绍在Java中...
在Android开发中,JNI...这种方式可以利用C/C++的性能优势,同时避免了在Java层直接操作网络请求可能导致的线程安全问题。在实际项目中,你还可以根据需求扩展功能,比如支持POST请求、处理headers、设置cookies等。
3. POST/GET:不同的HTTP请求方式,用于数据的提交和获取。 4. JavaDAO:数据库操作的接口,封装了SQL查询等操作。 5. JSON:数据交换格式,用于在前后端之间传递数据。 在实际应用中,这种架构使得开发人员能快速...
在Java编程中,请求JSON接口数据是常见的网络通信任务,主要应用于Web服务的客户端与服务器之间的数据交互。这里我们将深入探讨如何使用Java来获取指定接口的JSON数据,并涉及`HttpServletRquest`类的重要作用。 ...
后续请求相同图片时,直接从缓存读取,提高了加载速度。 5. 实现步骤: - 创建XML解析器,根据网络响应构建数据模型。 - 使用HttpURLConnection或OkHttp发送HTTP请求,获取XML数据。 - 解析XML数据,填充数据...
这个项目提供的可运行代码是一个完整的VS2013解决方案,包含了实现以上功能的所有必要文件,用户下载后可以直接编译和运行,体验和测试HTTP多文件上传的功能。这为学习和理解C++中的HTTP请求和文件上传提供了一个...
1. **安全性考虑**:直接在SQL Server中执行HTTP请求可能会引入安全风险,如SQL注入攻击等。因此,在生产环境中应谨慎使用此方法。 2. **性能问题**:频繁地发起HTTP请求可能会对数据库服务器造成额外负担,特别是在...
这些库允许开发者发起GET、POST等HTTP方法的请求,设置请求头,处理响应,甚至进行文件上传下载等操作。例如,使用HttpURLConnection,你可以创建一个URL对象,打开到该URL的连接,然后设置请求方法、请求头,并读取...
当浏览器访问一个网页时,它会发送一个HTTP GET请求到服务器,服务器接收到请求后返回HTTP响应,其中包含HTML页面内容。Python的requests库可以帮助我们模拟这些操作,通过发送GET或POST请求获取网页内容。 2. 逆向...
C++本身并不直接支持HTTP请求,但可以通过第三方库或者C++标准库中的套接字功能来实现。 本示例中,我们关注的是使用C++进行HTTP GET请求,向服务器`http://m.hbgajg.com/`发送请求。GET请求是最简单的HTTP请求类型...
它利用JavaScript创建异步HTTP请求,使得网页可以与服务器进行通信,从而实现数据的动态加载和更新。 **JSONP** JSONP(JSON with Padding)是一种解决跨域问题的非标准方法,主要用于JSON数据的获取。JSON是一种轻...
另外,有一个想法,这个程序是不是可以拿来做一些小攻击,比如现在很多Asp系统做了checkpost判断,判断是否是由登录本站后提交的数据,现在这样子可以在程序里面直接改HTTP协议头,应该可以骗过这种判断吧。...
在Android中,直接使用HttpURLConnection或HttpClient进行网络请求会涉及多线程处理、数据解析等复杂操作,因此,通常我们会选择使用第三方库,如OkHttp或Volley进行封装。本项目可能就是基于这样的目的,提供了一个...
2. **字符串拼接方式**:将XML数据直接作为字符串拼接到HTTP请求的主体部分。这种方法适用于数据量较小的情况,XML字符串可以直接编码并通过HTTP请求发送。例如,在GET请求中,XML数据可以作为查询参数的一部分;在...
`工程1.exe`是编译后的可执行文件,可以直接运行;`Form1.frm`是窗体设计文件,包含了用户界面的布局和控件;`Form1.frx`存储了窗体的非代码属性,如控件的位置和大小;`MSSCCPRJ.SCC`是版本控制文件,用于源代码...
4. **请求响应处理**:完成请求后,`Execute`或`ExecuteAsync`方法将返回`IRestResponse`对象,包含HTTP状态码、响应头和内容。内容可以解析为JSON或XML,或者作为原始字符串处理。 ```csharp var response = ...
数据从网络请求加载后,需要与`ListView`的每个条目进行绑定。这通常在`Adapter`的`getView()`方法中完成,根据数据创建或复用视图,并设置相应的文本和图像。 7. **事件监听**: 当用户点击列表项时,需要监听这...
相较于传统的HTTP协议,WebSocket允许数据双向传输,即服务器可以主动向客户端推送信息,而不仅仅是客户端向服务器发送请求。 标题中的“http-websocket代理”是指一个工具或服务,它能够帮助开发者通过HTTP协议来...
对于GET请求,PostMan允许用户输入URL,然后直接发送请求。在响应区域,用户可以看到返回的数据,无论是JSON、XML还是HTML格式,PostMan都有很好的展示效果,便于理解和分析。对于需要参数的GET请求,可以在URL的...