2013-07-31 14 views
8

Bir programlama sistemi kullanarak e-posta yoluyla göndermek için csv dosyaları oluşturmak bir java/spring-mvc web uygulaması geliştiriyorum.Geçici dosyalar bir Java web uygulamasında nerede saklanır?

İlk düşüncem bu dosyaları sunucuda yerel olarak oluşturmak ve daha sonra bunları alıcılara göndermekti, ancak şimdi bir şüphem var. Geçici dosyalar nerede saklanır?

Uygulamamı bir savaş olarak dağıtacağım, bu yüzden sorunların olabileceğini biliyorum.

WEB-INF dizinimde geçici bir dizin oluşturmak kötü bir fikir mi? Bir alternatif bu dosyaları serileştirmek ve bir veritabanı tablosunda saklamak olabilir.

Öneriniz nedir? herhangi bir en iyi uygulama?

cevap

7

Bunu jvm'de bıraktım, yani java.io.tmpdir sistem özelliğini kullanın. Tmp dir (new File(system.getProperty("java.io.tmpdir")).mkdir()) veya tmp dizinindeki bir dosya (File.createTempFile("name", ".csv")) dizin oluşturun.
Tomcat üzerinde çalışan uygulama için, tmp yönü <catalina_home_directory>/temp'dur.

+0

http://stackoverflow.com/questions/617414/create-a-temporary-directory-in-java – qkrijger

1

How to create a temporary directory/folder in Java? - Basit geçici dosyalar tam olarak neye ihtiyacınız olduğu gibi, aynı zamanda Java bu en iyi şekilde nasıl yapılacağına ilişkin 7.

Gerçekten sesleri - ve gerçekten onları saklamak için nereye endişelenmenize gerek yok , Java sizin için yapar. Onlara sadece geçici olarak ihtiyacınız varsa, bunları neden bir DB'de saklıyorsunuz? Veritabanları, önemsediğiniz kalıcı depolama içindir. Ve serileştirmenin zorlukları, neh ...

İlgili konular