我写了一个先把本地图片存放到本地一个指定目录d:\upload\,然后把地址放到数据库中。
再从数据库中把地址取出,并显示图片。可以实现
但是,我没试过怎样把图片上传到服务器,并存到数据库中,再页面中显示出来
把地址放到数据库中:
- Java code
InputStream is=new FileInputStream(upload); OutputStream os=new FileOutputStream("d:\\upload\\"+uploadFileName); byte[] buffer=new byte[1024]; int count=0; while ((count=is.read(buffer))>0) { os.write(buffer, 0, count); } os.close(); is.close(); String path="d:\\upload\\"+uploadFileName; b2.setPhoto(path); if (path.length()>0) { System.out.println("取得图片地址"+path); }else { System.out.println("图片地址为空"); } bookDao.addBook(b2); this.setMessage("添加成功!"); return SUCCESS;
页面显示图片:
- JScript code
<td><image id="image" src="<s:property value="#book.photo"/>" width="100" height="120"/></td>
我想问:上传到本地和上传到服务器本质区别是什么?实现机制是什么?具体代码有什么区别?
请大侠们多多指点啊,尽量详细点啊~~嘿嘿~~
------解决方案--------------------------------------------------------
this.getSession().getServletContext().getRealPath("/");
可以通过地址url+文件名取到
------解决方案--------------------------------------------------------
------解决方案--------------------------------------------------------
你的理解有误,你所说的本地和服务器其实都是在一个电脑或者主机上,服务器也是在本地的,只是d:\\upload\\"+uploadFileName指定了存放在主机的具体位置。
------解决方案--------------------------------------------------------