ServletContext.getRealPath("/") 의미 및 사용법
소개
서블릿 프로그래밍에서 ServletContext.getRealPath( )는 웹 콘텐츠 경로(확장된 WAR 폴더 구조의 경로)를 절대 디스크 파일 시스템 경로입니다.
getRealPath()에서 '/' 사용
getRealPath()에 전달된 "/"는 웹 콘텐츠 루트를 나타냅니다. 웹에서 액세스할 수 있는 모든 콘텐츠가 있는 디렉터리입니다. 이는 다음 프로젝트 구조의 /web 폴더와 동일합니다.
YourWebProject
|-- src
|-- web
|-- META-INF
|-- WEB-INF
|-- index.jsp
|-- login.jsp
사용 시나리오
언제 getRealPath("/")를 사용해야 합니까?
-
합리적인 사용 사례 없음: 피하세요 대부분의 시나리오에서는 getRealPath()를 사용합니다. 더 이식 가능하고 안정적인 대안이 있습니다.
getRealPath()
-
웹 리소스 읽기: ServletContext를 사용하세요. getResourceAsStream() 대신에 resources.
-
웹 리소스 나열: 사용 가능한 모든 웹 리소스 경로 목록을 보려면 ServletContext.getResourcePaths()를 사용하세요.
-
업로드된 파일 저장 또는 임시 파일 생성 : "참고" 섹션에서 관련 자료를 참조하세요.
주의사항
-
변경사항 손실: getRealPath()에서 얻은 디스크 파일 시스템 경로에 대한 변경 사항은 다음과 같습니다. WAR에 저장되지 않으므로 WAR 재배포 시 손실됩니다. file.
-
불안정성: WAR 파일을 디스크 파일 시스템으로 확장하도록 서버가 구성되지 않은 경우 getRealPath()가 null 또는 예기치 않은 경로를 반환할 수 있습니다.
위 내용은 ServletContext.getRealPath('/')의 의미와 사용법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!