>  기사  >  백엔드 개발  >  절대 및 상대 경로 적용

절대 및 상대 경로 적용

巴扎黑
巴扎黑원래의
2016-12-20 16:27:291108검색

이 문제는 구성 파일이 프로젝트의 Classes 디렉터리(또는 하위 디렉터리)에 있는 경우 **.Class.getResource('상대 경로')를 사용하여 구성 파일을 얻을 수 있습니다. 다른 디렉터리인 경우에는 프로젝트 시작 시 ServletContext를 통해서만 프로젝트 루트 디렉터리 + 구성 파일 디렉터리를 얻어서 경로를 확인할 수 있습니다.
다음은 프로젝트 작업 시 작성된 경로를 얻는 데 사용되는 A 클래스입니다. 하지만 그래도 도움이 되기를 바랍니다.
package com.example.web; >java.io.File 가져오기;
java.net.URL 가져오기

javax.servlet.ServletContext 가져오기

/ **
* 경로 습득 수업
**/
public class WebPath {
/**
* 프로젝트 루트 디렉터리의 절대 경로 가져오기
*
* @return 예: F:TongJianpengJ2EEUtil
**/
public static String getAbsolutePathWithProject() {
return System.getProperty("user.dir");
}

/**
* 프로젝트의 드라이브 문자 받기
**/
public static String getDriverPathWithProject() {
return new File("/").getAbsolutePath()
>
/**
* 프로젝트 루트 디렉터리의 절대 경로를 가져옵니다.
*
* @return 프로젝트 루트 디렉터리 예:
F:tomcatwebappsJ2EEUtil
**/
public static String getAbsolutePathWithWebProject(
HttpServletRequest request) {
return request.getSession().getServletContext().getRealPath("/")
}

/**
* 프로젝트 루트 디렉터리 아래 지정된 디렉터리의 절대 경로를 가져옵니다.
*
* @param 프로젝트 루트 디렉터리 아래 지정된 디렉터리
* 지정된 디렉터리 예:
F:tomcatwebappsJ2EEUtillogin
**/
public static String getAbsolutePathWithWebProject(
HttpServletRequest 요청, 문자열 경로) {
return request.getSession().getServletContext().getRealPath( 경로);
}

/**
* 프로젝트 루트 디렉터리의 절대 경로를 가져옵니다.
*
* @return 프로젝트 루트 디렉터리 예:
F:tomcatwebappsJ2EEUtil
**/
public static String getAbsolutePathWithWebProject(ServletContext context) {
return context.getRealPath("/");

/**
* 프로젝트 루트 디렉터리 아래 지정된 디렉터리의 절대 경로를 가져옵니다.
*
* @param 프로젝트 루트 디렉터리 아래 지정된 디렉터리
* 지정된 디렉터리 예:
F:tomcatwebappsJ2EEUtillogin
**/
public static String getAbsolutePathWithWebProject(ServletContext context,
String path) {
return context.getRealPath(path)

/ **
* 프로젝트 클래스 경로 디렉터리의 절대 경로 가져오기
*
* @return 클래스 디렉터리의 절대 경로
* file:/F:/tomcat/webapps/J2EEUtil /WEB- INF/클래스/
**/
공개 정적 URL getAbsolutePathWithClass() {
return WebPath.class.getResource("/")
}

/**
* 프로젝트 classPath 디렉터리 아래의 지정된 디렉터리에 대한 절대 경로를 가져옵니다.
*
* @param path
* 클래스 디렉터리 아래의 지정된 디렉터리 예:/com/
* @반환 파일: /F:/tomcat/webapps/J2EEUtil/WEB-INF/classes/com/
**/
공개 정적 URL getAbsolutePathWithClass(String path) {
return WebPath.class.getResource(path)
}

/**
* 지정된 클래스 파일이 있는 디렉터리의 절대 경로를 가져옵니다.
*
* @param clazz
* 클래스
* @return 클래스 파일의 절대 경로입니다. :
com.Aries.Util.Web.

* 경로는 file:/
* F:/tomcat/webapps/J2EEUtil입니다. /WEB-INF/classes/ com/Aries/Util/Web/
**/
공개 정적 URL getAbsolutePathWithClass(Class clazz) { 
  return clazz.getResource(""); 

}

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.