Java Soket Programlama – NetBeans Projesi
Tarih: June 3rd, 2009 | Yazan: Ahmet Kakıcı | Kategori: Programlama | Etiketler: java, Programlama, socket | 18 Yorum »Daha önceden detaylı açıklamasını yaptığım programın kaynak kodlarını vermiştim ancak o kodlarda ide tarafından oluşturulan bölümler mevcut değildi. Bugün netbeans kurduktan sonra eski projeleri de su yüzüne çıkardım ve paylaşıma sunuyorum.
İndireceğiniz arşivin içinde serverGUI – odev – odevx klasörleri mevcut. odevx istemci tarafının kodlarının olduğu klasör, odev ise istemci tarafına ait proje klasörü. serverGUI ise adından da anlaşılabileceği gibi sunucuya ait proje klasörü. serverGUI klasörü altıntaki dist klasöründe ise projeye ait jar dosyası mevcut, dilerseniz sunucuyu direk olarak bu dosyadan başlatabilirsiniz.
Aşağıda kendi kendime yaptığım konuşmaya ait iki istemci ve sunucuya ait pencere görüntüsü mevcuttur. Arayüz konusunda çok da yetenekli olmadığım için olabildiğince basit bir şekilde bıraktım.
İndirmek için tıklayın, umarım işinize yarar.

Ahmet Bey linkler kırılmıs, rıca etsem Server kısmını anlatan kodları da paylaşabilir misiniz?
şimdiden tesekkurler.
Bilgisayarda da bir yerlerde kaybolmuş durumda bulunmayı bekliyor. Bulur bulmaz hemen ekleyeceğim.
Cok tesekkur ederım. Beklıyor olacagım.
Merhaba Ahmet Bey,
Acaba GUI için verdiğiniz link kırılmış olabilir mi ? Rica etsem paylaşabilir misiniz ?
Merhaba, upload etmiş olduğunuz netbeans projesi’nin yerimi değişti acaba?Rica etsem paylaşabilirmisiniz. Şimdiden tesekkurler.
Gecikme için kusura bakmayın, kaynak kodları ve derlenmiş halini içeren dosyayı açıklamasıyla birlikte tekrardan ekledim.
Merhaba, vermiş olduğunuz ödev MIRC benzeri mi bir uygulamamı yoksa Messenger benzeri bir sohbet programı mıdır ?Yardımcı olursanız sevinirim.
Görünüş olarak mirc tarzında olsa da (tek bir mesajlaşma penceresi var) mesajlaşmalar kişiler arasında olduğundan dolayı msn benzeri diyebiliriz.
Altyapı da çok fark yok, biraz uğraşarak iki yöne de çekebilirsiniz.
merhaba ahmet bey. öğrenmek istediğim acaba client/server arasında çoklu dosya aktarımı mümkün mü? bu iş biraz acil, yardımcı olursanız sevinirim. şimdiden teşekkürler
Dosya aktarım işinin nasıl yapılacağına dair bir şey düşünmemiştim.
Farklı portları kullanarak çoklu aktarım da yapılabilinir.
Aynı porttan udp paketlerine hangi dosyaya ait olduğuna dair bir veri daha ekleyip gelen paketleri o veriye göre kontrol edip aktarımı başlamış dosyaya da yazdırabilirsiniz.
Yani; evet mümkün.
merhaba ahmet bey. daha önce size multi-thread ile ilgili bir soru sormuştum, ben de sizin gibi düşünüp udp ile çok uğraştım, ama bir sonuç alamadım. acaba bir image ve bir text dosyasının içinde bulunduğu bir paket nasıl transfer edilebilir? elinizde basit de olsa bir kod varsa ** adresine yollarsanız sevinirim. kendim öğrenip yazmak isterdim, ama çok acil ihtiyacım var. şimdiden teşekkürler, iyi çalışmalar
Elimde direkt olarak istediğiniz türde bir örnek yok malesef.
Ancak programda send fonksiyonu içindeki buf dizisi byte tipinde olduğu için byte dizisinde herhangi bir veriyi (resim, yazı, mp3 farketmez) bu kod ile iletebilirsiniz.
Aşağıda verdiğim adreste ise dosyadan veri okuyup byte dizisine yazmayı anlatan örnek kod mevcut.
http://www.java-tips.org/java-se-tips/java.io/reading-a-file-into-a-byte-array.html
öncelikle bu kadar erken cevap verdiğiniz için hem teşekkür etmem hem de kutlamam lazım. aslında benim bahsettiğim paket kendim oluşturduğum bir nesne, yani server’da bir image, bir file’ı olan (bunların uzunluğu, ismi olacak) bir nesneyi taşımam gerekiyor. sizin bahsettiğiniz dosyalar, zaten varolanlar. bununla da ilgilenirseniz sevinirim. şimdiden teşekkürler, iyi çalışmalar.
Sorunu tam olarak anlayamadım. Sunucu tarafındaki bir dosyayı mı istemcilere iletmek istiyorsunuz ?
isterseniz şöyle anlatayım; sunucu tarafında yarattığım bir nesnem olsun, ismi, kelime uzunluğu, vs. bu oluşturduğum nesneyi karşı tarafa, özellikleri ile birlikte gönderebileyim, yani karşıda, istemci de bu nesnenid ismini, kelime uzunluğunu görebileyim ve consola yazdırayım. umarım yeterince açıklayabilmişimdir, şimdiden teşekkürler, iyi çalışmalar.
Bir nesneyi serializable yaptığınız zaman o nesneyi bir dosya olarak kaydedip yollamanız mümkün:
http://www.csharpnedir.com/articles/read/?id=518
Teşekkürler üstad.
Şöyle bir sorunum var:
2 kişi lan üzerinden olmayan bir bağlantı kurmaya çalıştık.Server ve Client yazılımları tamam lan üzerinden rahat çalışıyor fakat nette Socket timeout diye bir sorunla karşılaşıyoruz.Timeout süresini sınırsız yapmama rağmen bu sorun devam ediyor nedeni ne olabilir