Bir uygulamamda resim yüklemem gerekiyor ancak resimlerin sayısı yaklaşık 150 k dan fazla ve hergün artıyor bunu veritabanında saklamak biraz saçma olur diye düşünüyorum dosya olarak nasıl saklarım ve hangi kayıda ait olduğunu nasıl belirlerim ?

soruldu: 26 Nis '13, 11:26

Hasan%20Bey's gravatar image

Hasan Bey
342202532
cevap kabul oranı: 0%

değiştirildi: 27 Nis '13, 14:29

%C3%B6zcanacar's gravatar image

özcanacar ♦♦
17.2k59183183


Böyle durumlarda genelde döküman yönetim sistemleri kullanılır(Örneğin alfresco). Bu gibi sistemler genelde dışarıdan erişim için API verirler. Alfresco nun da RESTFUL service ler için API si var. Sen bir dosya(hiç önemi yok resim olup olmamasının) kaydettiğin zaman sana onunla ilgili tekil bir id verirler. Sen de bu id yi alır veritabanına kaydedersin. Veritabanında resmin kendisini değil, onun adresini tutarsın. Sonra istediğin zaman döküman yönetim sisteminden geri yükleyebilirsin.

Bununla ilgili Amazon nun ve ya Google in servislerini de kullanabilirsin. Hepsi aşağı yukarı aynı mantıkla çalışıyor.

permanent link

cevaplandı: 27 Nis '13, 03:01

mceliksoy's gravatar image

mceliksoy ♦
6.5k84988
cevap kabul oranı: 25%

Ayrıca Masaüstü veya WEb uygulaması arasında da hiç bir fark olmaz. Çünkü her iki durumda da RESTFUL kullanarak sisteme erişebilirsin.

(27 Nis '13, 04:03) mceliksoy ♦ mceliksoy's gravatar image

dosya olarak unique(benzersiz) bir isimle klasöre, ardından veritabanına aynı adla binary(ikili) olarak kayıt düşün. benzersiz ad oluşturmak için java.util.UUID.randomUUID() metodunu kullanabilirsiniz. Daha sonra kullanırken klasör/dosyaAdi ile ulaşabilirsiniz.

permanent link

cevaplandı: 26 Nis '13, 15:01

gturedi's gravatar image

gturedi
2.8k41538
cevap kabul oranı: 26%

değiştirildi: 26 Nis '13, 15:03

masaüstü veya web uygulaması arasında ne gibi farklar olur

(27 Nis '13, 02:43) Hasan Bey Hasan%20Bey's gravatar image

dosya alım ve gösterimde farklar olur sadece, çünkü 2 tarafında kontrolleri farklı doğası gereği, veritabanı aynı kalır. web servisi kullanmak bardındarma maliyetinden kurtarır fakat performansı tahminimce lokalde tutmaya göre yavaştır.

(27 Nis '13, 07:08) gturedi gturedi's gravatar image

önce veritabanına bir kayıt ekle, o kaydın "id" kolonu AUTO_INCREMENT olsun. eklenen kaydın id'sini al ve dosyayı kaydederken [id].jpg filan gibi bir isimle kaydet biryere. dosyanın kayıt yolu zaten configurable olmalı. rastgele kaydetmiyosun yani. mesela /opt/tomcat/work/MyApp/images/uploaded/ tüm dosyaları buraya kaydedersin falan filan..

permanent link

cevaplandı: 03 May '13, 06:59

kodmanyagha's gravatar image

kodmanyagha
3.1k132852
cevap kabul oranı: 15%

Cevabınız
toggle preview

Bu soruyu takip et

E-Posta üzerinden:

Üyelik girişi yaptıktan sonra abonelik işlemlerini yapabilirsiniz

RSS üzerinden:

Cevaplar

Cevaplar ve Yorumlar

Yazı Formatlama

  • *italic* ya da _italic_
  • **bold** ya da __bold__
  • link:[text](http://url.com/ "başlık")
  • resim?![alt text](/path/img.jpg "başlık")
  • liste: 1. Foo 2. Bar
  • temel HTML etiketleri de kullanılabilir

Bu sorunun etiketleri:

×1,076
×66
×2

Soruldu: 26 Nis '13, 11:26

Görüntüleme: 1,551 kez

Son güncelleme: 03 May '13, 06:59

powered by BitNami OSQA