在JSP中相關路徑問題(***)
阿新 • • 發佈:2018-12-11
一、獲取方式
(1) 得到包含工程名的當前頁面全路徑:request.getRequestURI() 結果:/news/main/list.jsp (2) 得到工程名:request.getContextPath() 結果:/news (3) 得到當前頁面所在目錄下全名稱:request.getServletPath() 結果:如果頁面在jsp目錄下 /main/list.jsp (4) 得到IE位址列地址:request.getRequestURL() 結果:http://localhost:8080/news/main/list.jsp (5) 得到相對地址:request.getRequestURI() 結果:/news/main/list.jsp (6) 得到頁面所在伺服器的全路徑:application.getRealPath("頁面.jsp")/getServletContext().getRealPath("temp")) 結果:D:\resin\webapps\news\main\list.jsp/D:\Java\apache-tomcat-7.0.90\webapps\netdisks\temp(絕對路徑) (7) 得到頁面所在伺服器的絕對路徑:absPath=new File(application.getRealPath(request.getRequestURI())).getParent(); 結果:D:\resin\webapps\news
二、程式碼演示
<% String projectName = request.getContextPath();//工程名稱 String pagePath = request.getServletPath();//得到當前頁面所在資料夾 StringBuffer sb = request.getRequestURL();//IE位址列地址 String relative = request.getRequestURI();//請求的相對路徑/得到包含工程名的當前頁面全路徑 String sabsPath = new File(application.getRealPath(request.getRequestURI())).getParent();//請求絕對路徑 String sabsPath1 = application.getRealPath(request.getRequestURI());//請求絕對路徑 System.out.println("proName:"+projectName); System.out.println("pagePath:"+pagePath); System.out.println("sb:"+sb.toString()); System.out.println("relative:"+relative); System.out.println("sabsPath:"+sabsPath); System.out.println("sabsPath1:"+sabsPath1); /* //該專案名稱:netdisks 路徑:D:/Java/apache-tomcat-t.0.90 proName:/netdisks pagePath:/index.jsp sb:http://127.0.0.1/netdisks/index.jsp relative:/netdisks/index.jsp sabsPath:D:\Java\apache-tomcat-7.0.90\webapps\netdisks\netdisks sabsPath1:D:\Java\apache-tomcat-7.0.90\webapps\netdisks\netdisks\index.jsp */ %>