java获取WEB-INF目录绝对路径
2016-08-06 01:38
537 查看
JSP WEB工程在不用servlet的情况下如何在普通的java类中获取WEB-INF的绝对路径呢?
如下图所示,我在WEB-INF目录下面放了一个文件server.xml,
我需要在普通的java类中获取server.xml的绝对路径,怎样才能获取到呢?
---------------------------------------------------------------------------------------------------------------------------------------------
获取WEB-INF目录下面的server.xml文件绝对路径的代码如下:
[java] view
plain copy
print?
/**
* 获取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界面测试的代码如下:
[html] view
plain copy
print?
<%@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/
public static String getWebAppImagesTmpFolderPath() {
String imagesTmpFolderPath = Thread.currentThread().getContextClassLoader().getResource("").toString();
imagesTmpFolderPath = imagesTmpFolderPath.replace("file:/", "");
imagesTmpFolderPath = imagesTmpFolderPath.replace("WEB-INF/classes/", "");
imagesTmpFolderPath += "images/tmp";
return imagesTmpFolderPath;
}
如下图所示,我在WEB-INF目录下面放了一个文件server.xml,
我需要在普通的java类中获取server.xml的绝对路径,怎样才能获取到呢?
---------------------------------------------------------------------------------------------------------------------------------------------
获取WEB-INF目录下面的server.xml文件绝对路径的代码如下:
[java] view
plain copy
print?
/**
* 获取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界面测试的代码如下:
[html] view
plain copy
print?
<%@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/
public static String getWebAppImagesTmpFolderPath() {
String imagesTmpFolderPath = Thread.currentThread().getContextClassLoader().getResource("").toString();
imagesTmpFolderPath = imagesTmpFolderPath.replace("file:/", "");
imagesTmpFolderPath = imagesTmpFolderPath.replace("WEB-INF/classes/", "");
imagesTmpFolderPath += "images/tmp";
return imagesTmpFolderPath;
}
相关文章推荐
- java获取WEB-INF目录绝对路径
- 转:如何从普通Java类中获取WEB-INF目录绝对路径
- java获取WEB-INF目录绝对路径
- java获取程序根目录 WEB-INFO目录 CLASSES文件夹路径
- 获取javaweb项目所在目录的路径
- java获取WEB-INF目录下的文件
- java基础(安装/调试/记事本编写/web-inf目录/配置JRE,tomcat/查看虚拟路径/修改tomcat默认端口号)
- Java获取WEB目录路径
- 不同web服务器获取WEB-INF目录路径
- Java获取WEB目录路径
- java获取程序根目录 WEB-INFO目录 CLASSES文件夹路径
- Symfony2获取web目录绝对路径、相对路径、网址的方法
- 普通JAVA获取WEB项目下的WEB-INF目录
- 如何获得java工程或者java web工程中的src目录中的文件和webinf目录路径
- Java获取Web项目目录路径
- java类中获取WEB-INF路径
- java web绝对路径获取
- Java获取WEB目录路径
- JAVA WEB获取相对和绝对路径
- JAVA获取WEB项目下的WEB-INF目录