java获取WEB-INF目录绝对路径

来源:互联网 发布:手绘视频软件bgm 编辑:程序博客网 时间:2024/05/01 01:22

JSP WEB工程在不用servlet的情况下如何在普通的java类中获取WEB-INF的绝对路径呢?

如下图所示,我在WEB-INF目录下面放了一个文件server.xml,

我需要在普通的java类中获取server.xml的绝对路径,怎样才能获取到呢?


---------------------------------------------------------------------------------------------------------------------------------------------

获取WEB-INF目录下面的server.xml文件绝对路径的代码如下:

/** * 获取WEB-INF目录下面server.xml文件的路径 * @return */public static String getXmlPath(){//file:/D:/JavaWeb/.metadata/.me_tcat/webapps/TestBeanUtils/WEB-INF/classes/ String path=Thread.currentThread().getContextClassLoader().getResource("").toString();path=path.replace('/', '\\'); // 将/换成\path=path.replace("file:", ""); //去掉file:path=path.replace("classes\\", ""); //去掉class\path=path.substring(1); //去掉第一个\,如 \D:\JavaWeb...path+="server.xml";//System.out.println(path);return path;}

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

我在JSP界面测试的代码如下:

<%@page import="tools.ReadXML"%><%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html>  <head>        <title></title>  </head>    <body>  <center>server.xml所在路径:<br><%=ReadXML.getXmlPath()%></center>  </body></html>
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

效果截图如下:



-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

最后废话几句:

           我们都知道在JSP WEB工程中有几个固定的目录,如1.WEB-INF目录,2.classes目录....

而classes目录就在WEB-INF目录下面。在运行JSP网站时,所有的java类都被放在了classes目录下面,

我们通过以下语句获取class目录所在的目录:

Thread.currentThread().getContextClassLoader().getResource("").toString();

一般获取到的结果形式为:

file:/D:/JavaWeb/.metadata/.me_tcat/webapps/TestBeanUtils/WEB-INF/classes/ 

骚年,根据以上这个字符串,不难提取出WEB-INF目录的绝对路径吧!

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

您的十分满意是我追求的宗旨。

您的一点建议是我后续的动力。









0 0