程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> ssh2-上傳圖片和音樂的路徑問題

ssh2-上傳圖片和音樂的路徑問題

編輯:編程綜合問答
上傳圖片和音樂的路徑問題

代碼如下:

private static final long serialVersionUID = 572146812454L;
private File image; // 上傳的文件
private String imageFileName; // 文件名稱
private String imageContentType; // 文件類型
User user = (User) ActionContext.getContext().getSession().get("user");
private HttpServletResponse response = ServletActionContext.getResponse();
private HttpServletRequest request = ServletActionContext.getRequest();

private List picList;

public List getPicList() {
return picList;
}

public void setPicList(List picList) {
this.picList = picList;
}

private String picId;

private String userId;

private String commentPic;

//省略getter和setter

public String uploadPicture() throws IOException {
String s = UUID.randomUUID().toString();
String lastName = imageFileName.substring(imageFileName
.lastIndexOf(".") + 1, imageFileName.length());
String name = s + "." + lastName;
username = user.getUsername();
//獲取服務器路徑
String realpath = ServletActionContext.getServletContext().getRealPath(
"/upload");
System.out.println("realpath: " + realpath);
if (image != null) {
File savefile = new File(new File(realpath), name);
if (!savefile.getParentFile().exists())
savefile.getParentFile().mkdirs();
FileUtils.copyFile(image, savefile);
String imagePath = "/sDemo/upload/" + name;
System.out.println("imagePath: " + imagePath);
Picture picture = new Picture();
picture.setUserId(user.getId());
picture.setUserName(user.getUsername());
picture.setPictureUrl(imagePath);
ser.insertPicture(picture);
}
return "upload";
}

我想知道 String realpath = ServletActionContext.getServletContext().getRealPath("/upload");裡"/upload"是干什麼的?和 String imagePath = "/sDemo/upload/" + name;裡的upload有關系嗎?
我用這個上傳圖片上傳了一張圖片,但是在imagepath路徑下並沒有看到圖片,是存到了realpath下嗎?既然這樣為什麼要將url=imagepath存入數據庫而不是存realpath?
上傳的圖片是不是實際上存在tomcat上的realpath下,通過imagepath存取?這兩個路徑之間通過什麼建立關系?讀取圖片的時候讀取<img src="${pictureUrl}"就可以嗎。讀取音樂的時候是不是一樣的方式?

最佳回答:


realpath是實際路徑,文件上傳時需要這個完整的路徑才能知道傳到哪。
imagePath這個只是保存到數據庫的路徑,由於是服務器端,我們只要知道在當前站點根目錄下的路徑即可。由於是相對路徑,項目中引用圖片顯示的時候,可以直接用這個路徑。

guwei4037
u014337927
guwei4037
u014337927
guwei4037
u014337927
guwei4037
u014337927
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved