获取项目根路径, 其中xxx是当前的类名
1.根据上下文获取
ServletActionContext.getServletContext().getRealPath("");
或getRequest().getSession().getServletContext().getRealPath("");
//这种在普通情况下是正常可以用的,但是在定时器里就不好使了,会报空指针异常,这是就要使用下面的方法了
2. 根据当前类获取
path = xxx.class.getClassLoader().getResource("/").getPath();// 这个是classes文件夹路径
path = path.replace("/WEB-INF/classes", ""); //这个是root文件夹路径
3. 获取子文件夹
xxx.class.getClassLoader().getResource(“文件”).getPath(); //获取classes路径下“文件”的路径
4. 无类加载器
xxx.class.getResource(“”).getPath();// 缺少类加载器,获取xxx类经编译后的xxx.class路径