宋建勇 发表于 2013-2-6 08:47:19

利用Servlet使用数据流在jsp页面中显示硬盘中的图片

ShowImageFromDiskServlet.java代码如下:

package cn.com.songjy.demo.servlet;import java.io.ByteArrayOutputStream;import java.io.File;import java.io.FileInputStream;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import javax.servlet.ServletConfig;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;/** ** ClassName:ShowImageFromDiskServlet is for */public class ShowImageFromDiskServlet extends HttpServlet {private static final long serialVersionUID = 1L;String imagePath;         public ShowImageFromDiskServlet() {}    @Overridepublic void init(ServletConfig config) throws ServletException {imagePath = config.getInitParameter("imagePath");System.out.print("图片路径:");System.out.println(imagePath);}@Overrideprotected void service(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {OutputStream os = response.getOutputStream();File file = new File(imagePath);FileInputStream fis = new FileInputStream(file);byte[] btimg = readStream(fis);os.write(btimg);os.flush();os.close();}private byte[] readStream(InputStream in){ByteArrayOutputStream baos = new ByteArrayOutputStream();int data = -1;try {while((data=in.read()) != -1 ){baos.write(data);}return baos.toByteArray();} catch (IOException e) {e.printStackTrace();return null;}}}


ShowImageFromDiskServlet在web.xml中的配置如下:
<servlet>    <servlet-name>ShowImageFromDiskServlet</servlet-name>    <servlet-class>cn.com.songjy.demo.servlet.ShowImageFromDiskServlet</servlet-class>    <init-param>      <description>图片路径</description>      <param-name>imagePath</param-name>      <param-value>C:/TEMP/20121221093121.png</param-value>    </init-param></servlet><servlet-mapping>    <servlet-name>ShowImageFromDiskServlet</servlet-name>    <url-pattern>/showimage</url-pattern></servlet-mapping>

引自:http://cuisuqiang.iteye.com/blog/1741812

通过Java HTTP连接将网络图片下载到本地:http://cuisuqiang.iteye.com/blog/1726173
页: [1]
查看完整版本: 利用Servlet使用数据流在jsp页面中显示硬盘中的图片