JSP 页面中ajax返回图片绝对路径显示图片

转自:http://zhao103804.iteye.com/blog/1884343

 

 

首先,图片和工程不在一个盘符下。图片也不能放到工程下。
   在JSP 文件中 <img src="C:/Users/fx/Pictures/test.jpg"/>  这样是引不到图片的。因为,JSP页面在引图片的时候是  在页面解析的路径是:<img src="http://localhost:8080/test/images/1.jpg">。也就是说JSP在引图片的时候是先去你的工程目录下找的。
  所以如果要在JSP中引入其他盘符的图片,有两种方法可以解决:

一种是使用虚拟路径来配置:

在tomcat下的conf/server.xml中增加一个代码 在<Host></Host>中间

如下:

<!--增加的--path="/虚拟名" docBase="虚拟路径" ->

  <Context path="/upload" docBase="D:\louyuimage\upload\"  reloadable="true"  >
  </Context>
      </Host>

配置好以后,在JSP文件中为:

<img alt="" src="/upload/kuaidaowanlilai0605.jpg">

图片就显示出来了。

 

二种:

将文件用流读取出来显示:

<img alt="" src="/acc/readImage?imagePath=c:/test.gif">

Action代码如下:

 //图片的处理

@RequestMapping(value = "/acc/readImage", produces = MediaTypes.TEXT_PLAIN_UTF_8)

    public void readImage(HttpServletRequest request, HttpServletResponse response){

    String imagePath = request.getParameter("imagePath");//图片绝对路径

    try{

   File file = new File(imagePath);

       if (file.exists()) {

        DataOutputStream temps = new DataOutputStream(response

          .getOutputStream());

        DataInputStream in = new DataInputStream(

          new FileInputStream(imagePath));

        byte[] b = new byte[2048];

        while ((in.read(b)) != -1) {

temps.write(b);

temps.flush();

        }

        in.close();

        temps.close();

       } 

       } catch (Exception e) {

      e.printStackTrace();

       }

    }

 

 

两种方法都可以实现,还有一种就是在tomcat下面建立图片文件夹,该可以直接显示出来。

 

 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值