JSP, Java 현재 절대 경로 가 져 오기

2389 단어 Java/J2EE
eclipse 나 다른. class 파일 이 포장 되 지 않 은 상태 에서 다음 문 구 를 사용 하면. class 파일 의 절대 경 로 를 얻 을 수 있 습 니 다.
String classFilePath = clazz.class.getResource("").getPath();

. class 파일 이 jar 가방 에 들 어간 후에 위의 이 문 구 는 잘못 보 고 될 것 입 니 다.이 때 당신 이 할 수 있 는 일 은. class 파일 이 있 는 jar 의 절대 경 로 를 가 져 오 는 것 입 니 다.
String jarFilePath = clazz.class.getProtectionDomain().getCodeSource().getLocation().getFile();  
jarFilePath = java.net.URLDecoder.decode(jarFilePath, "UTF-8");

JSP:
String sLocalRealPath = application.getRealPath("/").replace('\\', '/');
if (sLocalRealPath != null && !sLocalRealPath.endsWith("/"))
{
    sLocalRealPath.concat("/");    //   WebLogic   WebSphere    
}

 Java:
String sClassRealPath = new String("");
//        "/",     /D:/test/WEB-INF/,   ,     substring()
sClassRealPath = this.getClass().getResource("/").getPath().substring(1).replaceAll("//", "/");
System.out.println(sClassRealPath);

1. 현재 파일 경 로 를 가 져 오 는 방법: (1). Test. class. getResource (") 는 현재 클래스 FileTest. class 파일 의 URI 디 렉 터 리 를 가 져 옵 니 다.자기 포함 안 돼!(2). Test. class. getResource ("/") 는 현재 classpath 의 절대 URI 경 로 를 얻 었 습 니 다.(3). Thread. currentThread (). getContextClassLoader (). getResource (") 는 현재 ClassPath 의 절대 URI 경 로 를 얻 었 습 니 다.(4). Test. class. getClassLoader (). getResource (") 도 현재 ClassPath 의 절대 URI 경 로 를 얻 었 습 니 다.(5). ClassLoader. getSystemResource (") 는 현재 ClassPath 의 절대 URI 경 로 를 얻 었 습 니 다.System. getProperty (user. dir) 에 비해 현재 사용자 디 렉 터 리 의 상대 경 로 를 사용 하지 마 십시오. 그 다음 에 결과 가 다양 합 니 다.(6) new File ("). getAbsolutePath () 도 사용 할 수 있 습 니 다.
2. 웹 서버 (1). Tomcat 는 클래스 에서 System. getProperty ("user. dir") 를 출력 합 니 다.% Tomcat 표시홈% / bin (2). Resin 은 JSP 가 놓 은 상대 적 인 경로 가 아 닙 니 다. JSP 엔진 이 이 JSP 를 SERVLET 로 컴 파일 하 는 경 로 를 루트 로 합 니 다. 예 를 들 어 새 파일 법 으로 File f = new File ("a. htm") 을 테스트 합 니 다.이 a. htm 는 resin 의 설치 디 렉 터 리 아래 (3). 파일 을 읽 는 방법 은 ServletContext. getResource AsStream () 을 사용 하면 됩 니 다 (4). 파일 의 실제 경 로 를 가 져 옵 니 다 String filereal_path=ServletContext.getRealPath("mypath/filename");?request. getRealPath ("/") 를 사용 하 는 것 을 권장 하지 않 습 니 다.3. 파일 작업 의 클래스, 사용 을 권장 하지 않 습 니 다. comons io 클래스 를 사용 할 수 있 습 니 다.

좋은 웹페이지 즐겨찾기