1. 程式人生 > >在JavaWeb專案的定時任務中獲取相對路徑

在JavaWeb專案的定時任務中獲取相對路徑

在JavaWeb專案定時任務中無法使用以下方法獲取路徑

request.getContextPath()

public String getPosition(String name,String telNumber,HttpServletRequest request) throws Exception {

    System.out.println("類檔案路徑:" + request.getContextPath() + "\\WEB-INF\\classes");
    System.out.println("類檔案路徑:" + RequestContext.class.getResource("/"
).getFile() + "BaseStationconfig.xml"); }

可以用以下方法獲得相對路徑

public static PlayMusic getDoorBaseStationMac() throws Exception {
    WebApplicationContext webApplicationContext = ContextLoader.getCurrentWebApplicationContext();
    ServletContext servletContext = webApplicationContext.getServletContext();
System.out.println("檔案路徑:" + "/WEB-INF/classes/BaseStationconfig.xml"); FileInputStream xmlInputStream = (FileInputStream) servletContext.getResourceAsStream("/WEB-INF/classes/BaseStationconfig.xml"); }

檔案在工程目錄位置見下圖