您的位置:首页 > 编程语言 > Java开发

java web 访问本地的静态资源(图片)

2017-03-18 11:10 537 查看
背景: 用户上传一张图片到服务器,通过浏览器显示这张图片

实现:

第一步:<a href="/test/showImageServlet?filename=测试的图片一枚.jpg">预览图片</a> 

第二步:servlet 实现:

-------------------------------------------------------------------------------------------------------------------------------------------------------

//通过浏览器显示访问图片的url,直接显示出来

public void showImage(HttpServletRequest request, HttpServletResponse response) throws Exception

{
response.setContentType("text/html; charset=UTF-8");//设置返回数据的格式
response.setContentType("image/jpeg");
//获取图片的url
String fileName = request.getParameter("filename");
//处理图片url的编码格式
String newpath = new String(fileName.getBytes("ISO-8859-1"), "UTF-8");
String absolutePath = rootPath + newpath;
//文件流
FileInputStream fis = new FileInputStream(absolutePath);
//输出流
OutputStream os = response.getOutputStream();

try{
int count = 0;
byte[] buffer = new byte[1024 * 1024];//设置字节数
while ((count = fis.read(buffer)) != -1)
os.write(buffer, 0, count);
os.flush();

}catch (IOException e){
e.printStackTrace();

}finally{
if (os != null)
os.close();
if (fis != null)
fis.close();

}

}

------------------------------------------------------------------------------------------------------------------------------------------------------------

第三步:web.xml 配置servlet映射

<servlet>

    <servlet-name>showImg</servlet-name>

    <servlet-class>test.ShowImage</servlet-class>

</servlet>

 

<servlet-mapping>

    <servlet-name>showImg</servlet-name>

    <url-pattern>/test/showImageServlet.do</url-pattern>

</servlet-mapping>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐