基于從request獲取各種路徑的方法介紹
equest.getRealPath() 這個方法已經(jīng)不推薦使用了,代替方法是:
request.getSession().getServletContext().getRealPath()
在servlet里用this.getServletContect().getRealPath()
在struts里用this.getServlet().getServletContext().getRealPath()
在Action里用ServletActionContext.getRequest().getRealPath();
以上三個獲得都是當(dāng)前運行文件在服務(wù)器上的絕對路徑
從request獲取各種路徑總結(jié)
request.getRealPath("url"); // 虛擬目錄映射為實際目錄
request.getRealPath("./"); // 網(wǎng)頁所在的目錄
request.getRealPath("../"); // 網(wǎng)頁所在目錄的上一層目錄
request.getContextPath(); // 應(yīng)用的web目錄的名稱
如http://localhost:7001/bookStore/
/bookStore/ => [contextPath] (request.getContextPath())
獲取Web項目的全路徑
String strDirPath = request.getSession().getServletContext().getRealPath("/");
以工程名為TEST為例:
(1)得到包含工程名的當(dāng)前頁面全路徑:request.getRequestURI()
結(jié)果:/TEST/test.jsp
(2)得到工程名:request.getContextPath()
結(jié)果:/TEST
(3)得到當(dāng)前頁面所在目錄下全名稱:request.getServletPath()
結(jié)果:如果頁面在jsp目錄下 /TEST/jsp/test.jsp
(4)得到頁面所在服務(wù)器的全路徑:application.getRealPath("頁面.jsp")
結(jié)果:D:\resin\webapps\TEST\test.jsp
(5)得到頁面所在服務(wù)器的絕對路徑:absPath=new java.io.File(application.getRealPath(request.getRequestURI())).getParent();
結(jié)果:D:\resin\webapps\TEST
2.在類中取得路徑:
(1)類的絕對路徑:Class.class.getClass().getResource("/").getPath()
結(jié)果:/D:/TEST/WebRoot/WEB-INF/classes/pack/
(2)得到工程的路徑:System.getProperty("user.dir")
結(jié)果:D:\TEST
3.在Servlet中取得路徑:
(1)得到工程目錄:request.getSession().getServletContext().getRealPath("") 參數(shù)可具體到包名。
結(jié)果:E:\Tomcat\webapps\TEST
(2)得到IE地址欄地址:request.getRequestURL()
結(jié)果:http://localhost:8080/TEST/test
(3)得到相對地址:request.getRequestURI()
結(jié)果:/TEST/test
相關(guān)文章
win10和win7下java開發(fā)環(huán)境配置教程
這篇文章主要為大家詳細介紹了win7下Java開發(fā)環(huán)境配置教程,win10下Java開發(fā)環(huán)境配置,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-06-06
關(guān)于RedisTemplate之opsForValue的使用說明
這篇文章主要介紹了關(guān)于RedisTemplate之opsForValue的使用說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-06-06
Springmvc基于fastjson實現(xiàn)導(dǎo)包及配置文件
這篇文章主要介紹了Springmvc基于fastjson實現(xiàn)導(dǎo)包及配置文件,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-10-10
spring+springmvc+mybatis+maven入門實戰(zhàn)(超詳細教程)
這篇文章主要介紹了spring+springmvc+mybatis+maven入門實戰(zhàn)(超詳細教程),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-05-05
Java class文件格式之常量池_動力節(jié)點Java學(xué)院整理
這篇文章主要為大家詳細介紹了Java class文件格式之常量池的相關(guān)資料,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-06-06
Delegate IDE build/run actions to maven 配置會影響程序運行嗎?
這篇文章主要介紹了Delegate IDE build/run actions to maven 配置會影響程序運行嗎,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-08-08

