jsp页面绝对路径的处理

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">

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值