private void getImage(HttpServletRequest request, HttpServletResponse response, String filePath)
throws ServletException, IOException {
// 禁止缓存
response.setHeader("Pragma", "No-cache");
response.setHeader("Cache-Control", "No-cache");
response.setDateHeader("Expires", 0);
// 指定生成的响应是图片
ServletOutputStream out = response.getOutputStream();
String type = FilenameUtils.getExtension(filePath);
if (StringUtils.isEmpty(type))
type = "PNG";
byte[] bytData = new byte[] {};
if (null != filePath) {
bytData = getBytesFromFile(new File(filePath));
if (bytData != null) {
response.setContentLength(bytData.length);
response.setContentType("image/" + type);
System.out.println("_bytData.length===>" + bytData.length);
out.write(bytData);
out.flush();
}
}
}
/**
*
* @param f File
* @return byte[]
*/
public static byte[] getBytesFromFile(File f) {
System.out.println("File==>" + f.getPath());
if (f == null) {
return null;
}
try {
FileInputStream stream = new FileInputStream(f);
ByteArrayOutputStream out = new ByteArrayOutputStream(1000);
byte[] b = new byte[1000];
int n;
while ((n = stream.read(b)) != -1) {
out.write(b, 0, n);
}
stream.close();
out.close();
return out.toByteArray();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
分享到:
相关推荐
在C# WebForm应用中,将图片保存到本地或服务器硬盘是一个常见的需求,尤其是在处理用户上传的图片或从网络获取的图片资源时。本文将详细解析如何利用C#实现这一功能,包括理解代码逻辑、HTTP响应头的作用以及如何...
在本文中,我们将探讨如何在JSP页面中通过Servlet将服务器硬盘上的图片展示到浏览器上。这是一个相当实用的技术,可用于动态生成图片或从服务器存储中检索图片资源,并将其作为响应发送到用户浏览器。下面将分步骤...
本教程将探讨如何使用Java Server Pages (JSP) 技术来实现这个功能,将图片从客户端上传到服务器的硬盘上。JSP是Java平台上的一个动态网页技术,它允许我们混合HTML、CSS和Java代码来创建交互式的网页应用。 首先,...
【标题】"使用Servlet+jQuery实现读取本地硬盘图片"涉及的主要知识点是Web开发中的服务器端处理和客户端交互。在Web应用中,Servlet是Java语言用于处理HTTP请求的重要组件,而jQuery则是一种广泛使用的JavaScript库...
这个URL指向了服务器上处理图片流的特定端点,客户端通过这个URL向服务器发出请求,服务器则响应并将图片数据返回,从而实现在页面上显示硬盘上不在项目内的图片。 此外,`<img>`标签还包含了`style`属性,用于设置...
为防止这种情况,图片应当保存在服务器的硬盘上,例如一个持久化的文件系统或云存储服务。在servlet中,可以设置逻辑来确保文件被正确存储,并生成相对应的持久化URL。 6. **文件管理**: 为了有效地管理和检索...
- 首先下载并安装客户端软件,例如文中提到的“花生壳”软件,用于获取免费动态域名。 - 登录花生壳网站(www.oray.net),注册并申请一个免费域名,如abc.vicp.net。 - 在本地电脑上登录花生壳软件,绑定申请的域名...
在Android应用开发中,将图片上传到服务器并转换为PDF是一项常见的需求,特别是在教育领域,可能用于制作电子教材、报告或其他教学材料。以下是对标题和描述中涉及的知识点的详细说明: 1. **图片上传**: - **...
在Android应用开发中,将图片上传到服务器是常见的需求,特别是在社交、分享或者云存储类的应用中。这个实例主要展示了如何实现这一功能。下面将详细解释相关知识点。 首先,服务器端使用Servlet处理上传请求。在`...
在IT行业中,图片下载方法通常指的是客户端如何高效、安全地从服务器获取图片资源。这可能包括HTTP或HTTPS协议的使用,缓存机制,多线程下载,断点续传等功能。装置可能指的是用于执行这些下载操作的硬件设备,如...
实现这一功能的基本思路是,用户上传图片到服务器后,服务器同步生成几张尺寸不同的缩率图,并存储在服务器的硬盘上。随后,前端请求缩率图时,服务端直接从硬盘中读取相应的缩率图文件进行返回,这样可以减少对原始...
1. **远程视频读取**:这指的是通过编程接口(API)或者SDK,可以从海康硬盘录像机获取实时视频流,并在远程客户端(如电脑或移动设备)上显示。这通常涉及到网络传输协议(如RTSP、HTTP或TCP/IP)的使用,以及视频...
本地存储直接将图片保存在服务器硬盘上,可以通过相对路径访问;云存储如Azure Blob Storage或Amazon S3,图片会被上传到云端,访问时需要提供访问令牌。 3. 图片显示: 显示图片可以通过两种途径:物理路径或URL...
这些代码通常由服务器提供,并在用户浏览器中解析执行,形成我们看到的网页内容。 获取网站源码工具有多种类型,其中最常见的是网页抓取工具和网页下载管理器。例如,`HTTrack Website Copier` 是一个开源的网站...
6. **服务器硬件优化**:选用高性能的硬件,如SSD硬盘、高速网络连接,以及针对并发优化的服务器硬件配置,也是提升性能的重要手段。 7. **开源软件的应用**:很多开源软件,如Lighttpd、Squid、Apache等,被广泛...
获取图片时,首先尝试从LruCache中查找,如果找不到,则从硬盘或网络加载。同时,为了保持缓存与硬盘的一致性,需要在将图片添加到内存缓存的同时,也保存到硬盘缓存。 硬盘缓存通常使用文件系统实现,比如SQLite...
2. **下载源码**:从官方网站或者GitHub上获取FastDFS的最新源码包。 3. **编译安装**:解压源码包,执行配置、编译、安装命令,如`./configure --with-mysql=yes`(如果使用MySQL)、`make`、`make install`。 4....
可以使用`FileItem`对象的`write()`方法将文件写入到服务器的硬盘上。记得处理文件名冲突的问题,可能需要生成唯一的文件名。 5. **保存文件路径**:在数据库中保存上传图片的路径。创建一个表来存储这些信息,包括...
1. 直接存储在服务器硬盘:简单但可能会占用大量磁盘空间。 2. 存储在云服务:如阿里云OSS、AWS S3,可扩展性强,但需要付费。 3. 使用数据库:BLOB类型字段存储小文件,但对于大文件,这种方式性能较差。 4. 文件...
相比于直接保存图片文件到硬盘,将图片转换为二进制数据存储在BLOB(Binary Large Object)字段中可以简化文件管理,尤其是在多服务器环境或者云存储中。在ASP.NET中,我们可以通过FileUpload控件获取图片文件,然后...