2012-06-11 1 views
2

내 Java JSP 응용 프로그램은 Tomcat 웹 서버에 영구 파일을 저장해야합니다. 지금은 시스템의 "/ temp"폴더에 파일을 저장합니다. 그러나이 폴더는 수시로 삭제됩니다. 또한 현재 솔루션은 하드 코딩되어 유연성이 떨어집니다 (예 : 다른 서버로 이동할 때). 이 구성에서 영구 디렉토리에 액세스 및 을 정의하는 가장 좋은 방법이 있다면Tomcat 환경에서 Java JSP 응용 프로그램 파일 위치 모범 사례

지금 싶습니다. 자세히, 어디 애플 파일 디렉토리를 정의하는 가장 좋은 장소이며, 내 자바 애플 리케이션 내에서 어떻게 액세스 할 것이라고? 이 설정의 목표는 (a) 응용 프로그램을 업데이트 (즉, 새로운 war 파일을 배치)하고 (b) 한 서버에서 다른 서버 및 OS (예 : Unix, Windows, MacOS)로 이동할 때 가장 적은 노력을 쏟는 것입니다.

나는이 주제에 수행 한 연구는 지금까지 (아마도 다른 사람의 사이에) 솔루션이 될 것이다 다음 것으로 나타났다 :

1) Tomcat 설치 디렉토리에서 사용자 지정 하위 디렉토리의 사용.

  • war 파일을 통해 tomcat에 새 버전을 배포하면 어떻게됩니까?
  • 어디에서 Java 응용 프로그램 내에서 에 액세스 할이 디렉토리를 정의합니까?

2.) 파일 시스템의 별도 디렉토리에 있습니다.

  • 시스템을 모르는 상태에서 좋은 위치 또는 방법은 무엇입니까?
  • 어디에서 Java 응용 프로그램 내에서 에 액세스 할이 디렉토리를 정의합니까?

감사합니다.

답변

1

기본적으로 일부 파일 형태로 '데이터베이스'를 만들고 있습니다. Java EE와 서블릿 컨테이너의 세계에서 이것에 대한 유일한 일반적인 접근법은 JNDI를 통해 이러한 자원을 구성하는 것입니다. Tomcat과 다른 컨테이너에는 '웹 응용 프로그램을위한 영구 저장소를위한 장소'라는 개념이 없습니다. 웹 애플리케이션에 영구 저장소가 필요한 경우에는 JNDI 또는 -D를 사용하여 구성해야합니다. 당신이 빌릴 수있는 관습이나 표준 연습은 없습니다.

규칙에 따라 파일 시스템 경로 이름을 선택하고 해당 규칙을 문서화 할 수 있습니다 (예 : Linux에서는/var/something, Windows에서는 이와 유사 함). 그러나 다른 사람이하는 일과 반드시 ​​일치하지는 않습니다.