2016-03-29 15 views
0

Json dosyam web uygulaması altında saklanıyor. Ben ... aşağıda gibiWeb-app altında depolanan json dosyasının zaman damgası nasıl kullanılır?

InputStream istream = request.getServletContext().getResourceAsStream("courses.json"); 
JsonReader rdr = Json.createReader(istream); 

json dosyasını okuyorum Ama servlet/jsp kadar tüm json dosyasını okumadan önce ben json dosyası damgası (değiştirilmiş süresi) bilmek istiyorum. Bu nasıl yapılır? File nesnesinin tanıtıcısı yok, aksi halde zaman damgasına erişmiş olurdum.

cevap

1

Dosyanızın içindeki dosyanın göreceli yolunu biliyorsanız, bir File nesnesini almak için yeterince kolaydır. Eğer bir savaş dosyası olarak uygulamanızı dağıtımı yapıyorsanız damgası dağıtım süresi olacak, böylece

File file = new File(getServletContext().getRealPath("courses.json")); 
Date date = new Date(file.lastModified()); 

, kapsayıcınız muhtemelen geçici bir dizine çıkartacaktır. Bu durumda, değiştirilmiş tarihi bilmenin herhangi bir şekilde yararlı olup olmayacağından emin değilim.

+0

@ Uygulamamın halihazırda dağıtılmış olması durumunda ve JSon dosyasını yeniden yüklediğimde ve değişikliği aldığımı varsaydığımda, değiştirilmiş süreyi mi yoksa eski dağıtım süresini mi alacağım? Bu soruyu soruyorum çünkü uygulamayı yeniden kullanmayı gerektiriyorsa daha fazla değişiklik yapmam gerektiğini düşünüyorum. – Prakash

+0

@Prakash, uygulama dağıtıldıktan sonra dosyayı bırakıyorsanız, son değiştirilme zamanını görmenizi beklerim. – Tap