在静态网页里面显示图片
(1)新建一个html文件,在静态网页里面显示图片。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<img alt="该照片不能正常显示" src="images/nan.png">
</body>
</html>
<img alt="该照片不能正常显示" src="images/nan.png"> 其中alt后面的内容是如果不能显示图片,而替换的内容。src是显示图片的相对路径。
以二进制流的形式读取图像并输出到浏览器
(1)新建一个servlet文件,在doGet里面写代码
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
//设置响应消息头Content-Type
response.setContentType("image/png");
//获取ServletContext对象
ServletContext context = super.getServletContext();
//获取读取服务端文件的输入流
InputStream is = context.getResourceAsStream("/images/nan.png");
//获取ServletOutputStream输出流
ServletOutputStream os = response.getOutputStream();
int i = 0;
while((i=is.read()) != -1)
{
os.write(i);//向输出流中写入二进制数据
}
is.close();
os.close();
}
先设置响应消息头,需要获取的是图片,且图片的后缀为png,即:"image/png";
再获取ServletContext对象和读取服务端文件的输入流,输出流为图片的路径;
最后,获取ServletOutputStream输出流,再把获取到的输入流写入输出流。关闭输入流和输出流。
以上是关于在浏览器显示图片,欢迎交流,敬请指正。