`
a137268431
  • 浏览: 157786 次
文章分类
社区版块
存档分类
最新评论

java 获取路径工具类

 
阅读更多
这个问题就得看你的配置文件放在哪里啦,如果放在了项目的Classes目录(或子目录)下,你可以用**.Class.getResource('相对路径')来获取配置文件路径.如果是其他目录,那你只能在项目启动时通过ServletContext获取项目根目录+配置文件的目录来确定路径.并把路径放到类文件可以引用的地方啦.
以下是我在做项目时写的一个用于获取路径的类,写的可能不太好.但还是希望能对你有所帮助:
package com.example.web;

import java.io.File;
import java.net.URL;

import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;

/**
* 路径获取类
* */
public class WebPath {
/**
* 获取项目根目录的绝对路径
*
* @return 如:F:\TongJianpeng\J2EEUtil
* */
public static String getAbsolutePathWithProject() {
return System.getProperty("user.dir");
}

/**
* 获取项目所在盘符
* */
public static String getDriverPathWithProject() {
return new File("/").getAbsolutePath();
}

/**
* 获取项目根目录的绝对路径
*
* @return 项目根目.例如<br/> F:\tomcat\webapps\J2EEUtil\
* */
public static String getAbsolutePathWithWebProject(
HttpServletRequest request) {
return request.getSession().getServletContext().getRealPath("/");
}

/**
* 获取项目根目录下的指定目录的绝对路径
*
* @param 项目根目下的指定目录
* .例如:/login/
* @return 项目根目下的指定目录.例如:<br/> F:\tomcat\webapps\J2EEUtil\login\
* */
public static String getAbsolutePathWithWebProject(
HttpServletRequest request, String path) {
return request.getSession().getServletContext().getRealPath(path);
}

/**
* 获取项目根目录的绝对路径
*
* @return 项目根目.例如<br/> F:\tomcat\webapps\J2EEUtil\
* */
public static String getAbsolutePathWithWebProject(ServletContext context) {
return context.getRealPath("/");
}

/**
* 获取项目根目录下的指定目录的绝对路径
*
* @param 项目根目下的指定目录
* .例如:/login/
* @return 项目根目下的指定目录.例如:<br/> F:\tomcat\webapps\J2EEUtil\login\
* */
public static String getAbsolutePathWithWebProject(ServletContext context,
String path) {
return context.getRealPath(path);
}

/**
* 获取项目classpath目录的绝对路径
*
* @return classes目录的绝对路径<br/>
* file:/F:/tomcat/webapps/J2EEUtil/WEB-INF/classes/
* */
public static URL getAbsolutePathWithClass() {
return WebPath.class.getResource("/");
}

/**
* 获取项目classPath目录下的指定目录的绝对路径
*
* @param path
* classes目录下的指定目录.比如:/com/
* @return file:/F:/tomcat/webapps/J2EEUtil/WEB-INF/classes/com/
* */
public static URL getAbsolutePathWithClass(String path) {
return WebPath.class.getResource(path);
}

/**
* 获取指定类文件的所在目录的绝对路径
*
* @param clazz
* 类
* @return 类文件的绝对路径.例如:<br/> 包com.Aries.Util.Web下的Main.java类.<br/>
* 路径为:file:/
* F:/tomcat/webapps/J2EEUtil/WEB-INF/classes/com/Aries/Util/Web/
* */
public static URL getAbsolutePathWithClass(Class clazz) {
return clazz.getResource("");
}
}
分享到:
评论

相关推荐

    【强2】30个java工具类

    [工具类] 获取绝对路径 .java.txt [工具类] 记录log日志文件的工具类 .java.txt [工具类] 连接数据库的工具类 .java.txt [工具类] 使用Java程序来实现HTTP文件的队列下载 .java.txt [工具类] 文件操作工具类 .java....

    Java开发工具类

    Class类工具 \Cookie工具类 \excel读取 工具类\Java如何生成验证码图片和点击刷新验证码\java获取当前月第一天和最后一天,上个月第一天和最后一天\java实现ftp文件的上传与下载\Json工具类 - JsonUtils.java\JS...

    30个java工具类

    [工具类] 获取绝对路径 .java.txt [工具类] 记录log日志文件的工具类 .java.txt [工具类] 连接数据库的工具类 .java.txt [工具类] 使用Java程序来实现HTTP文件的队列下载 .java.txt [工具类] 文件操作工具类 .java....

    JAVA读取同一路径下所有类及其方法

    我们可以使用一个名为 `ClassUtil` 的工具类来获取同一路径下所有类及其方法。这个类中有一个 `getAllAssignedClass` 方法,用于获取同一路径下所有子类或接口实现类。这个方法使用 `getClasses` 方法来获取当前类...

    PathUtils 路径拼接工具类

    获取资源在不同系统下路径,拼接资源在不同系统下的路径。

    java操作sftp的工具类(JSch)

    `SftpUtil.java`文件可能包含一个封装了这些步骤的工具类,方便在项目中复用。一个简单的`SftpUtil`工具类示例如下: ```java import com.jcraft.jsch.ChannelSftp; import com.jcraft.jsch.JSch; import ...

    java生成pdf工具类

    在这个工具类中,`generatePdf`方法接受目标文件路径和内容列表,然后逐条添加内容并检查是否需要分页。`addWatermark`方法则负责添加水印。根据实际需求,可以进一步扩展这个工具类,比如支持自定义水印文本、颜色...

    Java-Android工具类

    Preference工具类通常封装了如`putString()`, `putInt()`, `getBoolean()`等方法,使得设置和获取共享偏好设置更为方便。例如,`saveSetting(key, value)`可以保存键值对,`getSetting(key)`则可以读取相应的设置值...

    java邮件读取工具类,可读取附件,功能强大!

    java邮件读取工具类,可读取附件,功能强大,经测试可用。

    纯Java验证码工具类

    "纯Java验证码工具类" 提供了一种简便的方法来生成这种安全机制,无需依赖其他语言或库。这个工具类可以被轻松地集成到任何Java项目中,为你的应用程序添加一道防线。 验证码生成通常包括以下几个关键步骤: 1. **...

    一些java常用的工具类整合

    工具类可能提供一个方法,如`getServerPath()`,它利用`ServletContext`或者`HttpServletRequest`对象来获取当前应用的根路径,或者服务器的绝对路径。 3. **获取类路径**: 类路径是Java在运行时查找类文件的位置...

    常用Java工具类

    这些工具类通常包含初始化配置、获取和释放连接的方法,帮助开发者更高效地处理数据库操作。 2. **MD5加密工具类**:MD5(Message-Digest Algorithm 5)是一种广泛使用的哈希函数,它可以将任意长度的数据转化为...

    ffmpeg java 封装工具类,音视频处理.zip

    本压缩包提供的"ffmpeg java 封装工具类"正是为了解决这个问题,它将FFmpeg的功能与Java编程语言相结合,提供了一套易于使用的API。 一、FFmpeg Java 封装工具类介绍 这个工具类通常包括以下核心功能: 1. **命令...

    java常用工具类汇总

    "Java常用工具类汇总"是一个集合了各种实用工具类的资源,旨在方便开发者在处理常见任务时提高效率。这个工具类库覆盖了字符串、文件、数组以及数学等多个方面,同时也提供了相应的API文档,使得开发者能够更好地...

    jaava和jsp工具类

    [工具类] 获取绝对路径 .java [工具类] 记录log日志文件的工具类 .java [工具类] 连接数据库的工具类 .java [工具类] 使用Java程序来实现HTTP文件的队列下载 .java [工具类] 文件操作工具类 .java [工具类] ...

    上传下载工具类java

    在Java编程领域,上传下载工具类是经常被用于处理文件传输的应用程序开发中的关键组件。这类工具类的主要目的是简化文件的上传和下载过程,提高代码的可读性和可维护性,同时确保数据的安全性和完整性。以下是对...

    Java常用工具类UtilClass

    在Java编程中,工具类(Util Class)是包含各种实用函数的静态类,它们提供了一种简化常见任务的方法。在给定的`UtilClass`中,我们有五个主要的工具类:`StringUtil`、`FileUtil`、`ConnectDB`、`DateUtil`和`...

    JAVA生成WORD工具类

    这个“JAVA生成WORD工具类”提供了一种解决方案,使得开发者可以通过代码动态地生成Word文档,避免手动操作的繁琐和错误。下面将详细介绍这个工具类的工作原理和可能的应用场景。 首先,Java生成Word文档通常涉及到...

    java银行工具类java银行工具类

    根据银行卡号获取银行的名称 银行的机构号 银行卡的卡的类型 银行卡的卡种 工具类是由java 编写 其他的开发语言 也可以参考 包含了4800 +种卡种 自己测试了 还是比较全的 比支付宝提供的接口返回的卡种还要全 读取...

    Java证书打印工具类

    1. **证书模板管理**:工具类可能包含一个方法用于加载证书底版图像,可能是从本地文件系统或者网络资源获取。这通常涉及到`java.awt.image.BufferedImage`类,用于存储和处理图像。 2. **文本样式定义**:证书上的...

Global site tag (gtag.js) - Google Analytics