您的位置:首页 > Web前端 > JavaScript

JSP页面显示绝对路径图片问题

2013-08-19 10:47 549 查看
file.jsp代码:
<%@ page contentType="text/html; charset=utf-8" language="java"
import="java.sql.*,java.util.*,java.io.*" errorPage=""%>
<%@taglib prefix="s" uri="/struts-tags"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<base href="<%=basePath%>">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>文件预览</title>
<link rel="shortcut icon" href="images/DA_SY.gif" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="text/javascript" language="javascript" src="js/jquery.js"></script>
</head>
<%
out.clear();
out = pageContext.pushBody();
response.setContentType("image/jpeg");//设置显示文件或图片的格式如:application/pdf

try {
String imgName = request.getParameter("fileName");
String imgPath1 = "D:/IPM/hardware/"+imgName;
String imgPath2 = "D:/IPM/hardware/error.jpg";

//判断该路径下的文件是否存在
File file = new File(imgPath1);
if (file.exists()&& !imgName.equals("")) {
DataOutputStream temps = new DataOutputStream(response
.getOutputStream());
DataInputStream in = new DataInputStream(
new FileInputStream(imgPath1));

byte[] b = new byte[2048];
while ((in.read(b)) != -1) {
temps.write(b);
temps.flush();
}

in.close();
temps.close();
} else {
DataOutputStream temps = new DataOutputStream(response
.getOutputStream());
DataInputStream in = new DataInputStream(
new FileInputStream(imgPath2));

byte[] b = new byte[2048];
while ((in.read(b)) != -1) {
temps.write(b);
temps.flush();
}

in.close();
temps.close();
}

} catch (Exception e) {
out.println(e.getMessage());
}
%>
<body>
</body>
</html>
在jsp页面用超链接等方式访问文件或图片<a href="file.jsp?fileName=xxx">点击预览</a>或者<img src="file.jsp?fileName=xxx">
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: