使用servletOutputSteam对象来输出图片

如果要想浏览器输出图像,二进制文件,需要使用ServletOutputStream类,可以通过HttpServletResponse对象里面的getOutputStream方法来获得。

输入代码试试吧:

—————————————————————————–

package ynu.sanwen.gagaj2ee;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.OutputStream;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class ShowImage extends HttpServlet {

private static final long serialVersionUID = 13502749775465337L;

@Override
protected void service(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {
res.setContentType(“image/jpeg”);//设置相应信息的类型
OutputStream os=res.getOutputStream();//获得servlet的servletoutputstream对象
byte[] buffer=new byte[8192];//每次从文件里面读取8k
String imageName=req.getParameter(“name”);//获得图片的路径
FileInputStream fos=new FileInputStream(imageName);//打开图片文件
int count;
while(true){
count=fos.read(buffer);//将字节读取到缓冲区
if(count<=0){
break;
}
os.write(buffer, 0, count);//向客户输入图片
}
fos.close();
}

}

 

—————————————————————————————–

共有 0 条评论

Top