2013-01-04 7 views
1

사용자가 오디오를 업로드 할 수있게 해주는 웹 앱을 만들고 있는데, 제 질문은 그 파일을 어디에 배치해야합니까? Web-Content 안에 넣어야합니까? 또는 WEB-INF 안에 있습니까? (나는 대부분의 오디오 파일이 거대하기 때문에이 파일들을 위해 데이터베이스를 사용하는 것을 고려하지 않는다) 파일을 업로드하고 저장하는 가장 좋은 방법은 무엇인가? 가능한 한 많이 내 응용 프로그램을 war 파일에 배포 할 때 데이터베이스에 이러한 파일의 상대 파일 경로를 저장하므로 파일이 여전히 존재합니다.사용자가 업로드 한 파일을 저장할 위치는 어디입니까?

+1

최종 사용자가 귀하의 허락없이 직접 파일에 액세스 할 수 있으십니까? – Jazzepi

+1

사용자가 업로드 한 파일을 webapp에 저장하거나 폴더를 배포하지 않습니다. 아마존 s3 또는 rackspace 클라우드 파일에 넣을 수 있습니다. 또는 file.repositry.path에 대한 구성을 가지고 거기에 파일을 저장하십시오. – Subin

+0

file.repository.path는 어떻게 작성합니까? 내 응용 프로그램을 쉽게 배포하고 싶습니다. 따라서 다른 장치로 이동하는 경우 파일이 여전히있을 수 있습니다. – user962206

답변

1

업로드 된 파일을 배치하는 것은 좋지 않습니다 어떤 수준에서 웹 응용 프로그램 아래에. 내 기본 설정은 경로가 구성된 구성 파일입니다. 업로드 된 파일을 서버에서 실행할 수 없도록 경로가 웹 루트에서 완전히 액세스 할 수없는 것이 중요합니다.

StorePath=C:/temp/Storage/ 

이 텍스트 파일을 포함

create a text file called <webapp>.properties 

다음 예)합니다 (ResourceLoader.getResource로부터 액세스 경로에 포함되어야 classpath, WEB-INF

속성은 java를 사용하여로드 할 수 있습니다.

java.util.Properties props = new java.util.Properties(); 
java.net.URL urlx = ResourceLoader.getResource("<webapp>.properties"); 
props.load(urlx.openStream()); 
String buildVersion =props.get("StorePath").toString(); 

그런 다음 해당 위치에 파일을 저장하십시오.

+0

* 응용 프로그램을 구축하고 * 응용 프로그램을 호스팅하는 경우이 방법이 유용합니다. 대규모 프로젝트의 경우 호스팅 및 유지 관리가 별도의 관심사가됩니다. 그런 경우이 솔루션의 요점을 유지하는 것이 가장 쉽지만 데이터베이스, JNDI 또는 시스템 특성 중 하나에 구성을 두는 것이 좋습니다. – Friso

0

당신이 직면하고있는 시나리오에 따라 그 오디오는 무엇에 사용됩니까? 그러나 리소스 파일을 webapp 폴더에 저장하는 것은 항상 나쁜 생각입니다. 앱에 액세스 권한이있는 별도의 폴더 또는 컴퓨터 또는 HDFS 또는 Amazon S3와 같은 클라우드 스토리지 제품과 같은 다른 분산 파일 시스템에 마운트 된 일부 원격 저장소에 파일을 저장할 수 있습니다.

+0

음악 사이트를 구축 중이며 이러한 오디오 파일이 스트리밍됩니다. 오디오 파일의 상대 경로를 데이터베이스에 저장합니다. – user962206

0

서버 저장 공간 (서버의 파일 시스템에있는 하드 드라이브)에 파일을 업로드하는 가장 좋은 방법은 서버에 폴더를 만들고 그 파일을 업로드하는 것입니다. 업로드 후 파일의 업로드 된 경로를 데이터베이스에 넣습니다.

언제든지 데이터베이스에서 파일 가져 오기 파일 경로를 표시하고 html/jsp 페이지에 표시하고 적절한 html 태그가있는 경로를 표시하여 처리 할 수 ​​있습니다.

이미지를 표시하는 것과 마찬가지로 서버 저장 경로의 디렉토리에 이미지의 경로를 저장합니다. 경로는 db로 가정합니다. 경로는 www.xrv.com/images/Sunset.jpg (입니다. Absolute or relative`).

jsp 사용 <img src="www.xrv.com/images/Sunset.jpg"/>

관련 문제