声明filter
<servlet-mapping>
<servlet-name>dl-servlet</servlet-name>
<url-pattern>/dl/*</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>dl-servlet</servlet-name>
<servlet-class>
com.ssjc.manage.xbase.core.servlet.FileDLServlet
</servlet-class>
</servlet>
package com.ssjc.manage.xbase.core.servlet;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.log4j.lf5.util.StreamUtils;
/**
* Servlet implementation class for Servlet: FileDLServlet
*
* @author cong_px
* @Date 2008/10/06
* @Version 1.0.0
*/
public class FileDLServlet extends javax.servlet.http.HttpServlet implements javax.servlet.Servlet {
static final long serialVersionUID = 1L;
/*
* @see javax.servlet.http.HttpServlet#HttpServlet()
*/
public FileDLServlet() {
super();
}
/*
* @see javax.servlet.http.HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doProcess(request, response);
}
/*
* @see javax.servlet.http.HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doProcess(request, response);
}
/**
*
* @param request
* @param response
* @throws ServletException
* @throws IOException
*/
protected void doProcess(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String binaryObjectId = request.getRequestURI();
int idx = binaryObjectId.lastIndexOf('/');
binaryObjectId = binaryObjectId.substring(idx+1);
idx = binaryObjectId.indexOf('.');
//后缀名不存在时导致的错误
if(idx == -1){
response.sendError(404);
return;
}
// 这里可以“D:/uploadImages/”可以从配置文件中读取
File file = new File("D:/uploadImages/" + binaryObjectId);
if(file == null){
response.sendError(404);
} else {
InputStream in = null;
try {
in = new FileInputStream(file);
StreamUtils.copy(in, response.getOutputStream(), 2048);
} finally {
if(in!=null){
try {in.close();} catch (Exception e) {}
in = null;
}
}
}
}
}
<img src="<%= context %>/dl/<s:property value="product2.picture.fileId"/>" width="90" height="68" alt=.....
分享到:
相关推荐
本项目涉及的知识点主要集中在利用jQuery处理图片的显示,并通过编程技术实现图片的去重,以达到优化页面加载效果的目的。下面我们将深入探讨这个"jQuery过滤重复图片筛选代码"的相关技术细节。 首先,`index.html`...
`src`目录存放源代码,`lib`可能包含依赖的外部库。 7. **I/O操作**: 为了读取和保存图片,我们需要使用`ImageIO`类,它提供了`read`和`write`方法。`read`方法用于从文件加载图片,`write`方法则用于将处理后的...
在给定的文件中,我们有三个主要部分:`images`目录包含要展示的图片资源,`js`目录存放JavaScript代码,而`demo.html`是演示页面。下面将详细解释这些文件如何协同工作来实现上述效果。 首先,HTML页面(`demo....
4. **图片(img)**:存放项目所用的图片资源,这些图片会在动态模糊效果下呈现视觉差,提升用户体验。 5. **字体(fonts)**:如果特效涉及到自定义字体或者图标,这个文件夹将包含所需的字体文件。 6. **index....
`libs`目录存放外部库文件;`src`目录是源代码所在位置;`build`目录则是编译生成的临时和最终文件。 总结起来,Intent和Intent Filters是Android中实现组件间通信的核心机制,它们使得不同应用之间的交互成为可能...
- `Environment.getExternalStorageDirectory()`方法用于获取外部存储的根目录,通常用于存放用户可访问的文件。 3. **图片加载库**: - 在显示大量图片时,避免内存问题,通常会使用图片加载库,如Glide或...
`dist`目录则存放构建后的可执行文件或库。`src`目录下是源代码,可能包含了实现图像处理功能的类。`lib`目录则包含了项目所依赖的外部库,可能包括其他图像处理库,如Apache Commons Imaging(前身是 Jakarta ...
1. **创建项目结构**:首先,我们需要创建一个标准的Java Web项目,包括src/main/java(存放源代码)、src/main/resources(存放配置文件)和Web-INF目录(存放web.xml)。 2. **配置SSH**: - **Struts2配置**:...
例如,如果你想要将APK存放在应用的私有外部存储空间,可以使用`getExternalFilesDir()`: ```java File apkFile = new File(getExternalFilesDir(null), "update.apk"); request.setDestinationUri(Uri.fromFile...
在使用Ehcache进行页面缓存时,需要对缓存配置文件进行合理的设置,以满足不同场景的需求。下面是一些关键的配置项及其含义: - **`maxElementsInMemory`**:指定缓存在内存中的最大元素数量。例如,`...
- **public**:上传文件和目录图片,用户上传的图片和文件会放在这里。 - **index.php**:文件程序入口,所有请求都从此文件开始处理。 - **rpc.text**:未明确说明,可能为RPC相关配置或日志文件。 ##### 自建...
在Ionic中,可以利用AngularJS的过滤器(Filter)实现搜索功能,动态更新列表,显示与用户输入匹配的城市。 **五、 文件结构解析** `ionicCityList`这个文件可能包含了以下组成部分: 1. `www`: 这是应用的主要工作...
8. **监控和调试**:利用`-v`或`--debug`选项启动Logstash获取详细日志,以及使用`-f`指定特定配置文件。还可以通过`metrics`插件收集Logstash自身的运行指标。 总的来说,Logstash-7.10.1是一个强大的日志处理工具...
- /WEB-INF/lib:存放所有外部JAR文件。 - 私有文件:不被Web服务器返回的文件。 Struts 2问题领域 Struts 2框架解决了多个Web开发中的问题领域: - 应用程序逻辑与标记的分离:使得更改和维护变得更容易,并且更...
若存在多个编排XML文件,则需要通过`mule-deploy.properties`文件指定具体使用哪一个。 #### MULE ESB 编排原则 MULE ESB的服务编排基于“流(Flow)”的概念来进行。每个流通常包含以下几种基本节点元素: - **...
3. **配置web.xml**:在Web应用的配置文件web.xml中,需要配置Struts2的前端控制器`org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter`,这是Struts2处理请求的核心组件。 4. **创建Struts...
- **OutXML**: 用于存放输出的XML文件。 #### 七、总结 通过上述步骤,开发者可以快速入门Mule ESB Studio的安装和使用方法,掌握如何创建基本的Mule项目,了解Mule流程的基本构成及运行机制。这对于构建复杂的...
`src`目录存放源代码,`build`目录是编译过程中生成的临时文件,而`libs`目录通常用来放置外部依赖库。 总的来说,通过BroadcastReceiver,我们可以实现类似QQ的强制下线功能,同时结合弹窗提示,提供良好的用户...
- `bin/`:存放可执行文件,如启动和停止 Logstash 的命令。 - `config/`:存储配置文件,其中 `logstash.yml` 是主配置文件,定义 Logstash 的全局设置,而 `pipeline/` 子目录下有每个数据管道的配置。 - `lib/`:...
1. **Web应用程序结构**:动态Web项目通常遵循一定的目录结构,如WEB-INF下的web.xml文件是应用的部署描述符,存放Servlet、Filter、Listener等的配置信息。项目中的"Dynamic web"可能包含了这个标准结构。 2. **...