Adsız
Yorum yok
30 Haz 2014
Selamun aleyküm/ Aleykum selam
Networkçü olmam beni nedense bir anda Javaya çekti ve bu konuda da Java ile ağda çalışma medotlarını araştırıp öğrenmeye sürüklendiğimi hissettim. Bu açıdan sizlere bildiğim basit olan ağ programladan bahsedeceğim. Java ile ağ programlama çok basit olan bir işlemdir. Karışık ağ programlamalar java ile çok basit bir hale gelmiştir.
Bu yazı dizimde değineceğim konular ise;
Giriş
Temel Kavramlar
Adres kıyaslama
URL sınıfı ile dosya erişim
Proxy sunucusu üzerinden bağlantı.
URL Connection
Proxy-Authentication
Get ve Post ile veri aktarımı
Get sistemi
post sistemi
Arama motorları
Host ve IP adresi
Socket Programlama
Socket hakkında bilgi
Server bağlantısı
Datagram Socket
UDP Server
Javada Ağ API'leri java.net javax.net pakatleri içerisinde bulunmaktadır. Ağ programlamaya geçmeden önce basit bilindir bir kaç kavramdan bahsetmek istiyorum. Aslında bildiğiniz şeyler olsada, ben yine de anlatmadan geçemeyecem :)
Host: ağ sistemlerinde belli bir adres olan makine
IP: Ağda hostu belirleyen 32 bitlik belirtici adrestir.
Paket: tek mesaj dizini olarak tanımlayabiliriz
Router: farklı ağlar arasında paketleri yollayan bir host.
URI veya URL
URL: Webtek bir adres formatıdır. örneğin kurtulushalil.blogspot.com adresi web ordamında bir adresi göstermektedir. adres öncelikle protokol ile başlar bu protokol ya http veya https dir.
Her URL nin bir protokolü olmak zorundadır ve bu URI nin özleştirişmiş halidir.
URL url = new URL("http://internetadresiniz.com/index.html");
URL'leri bu şekilde tanımlayabildiğimi gibi ayrı ayrıda tanımlaya bilmekteyiz.
Şimdi gelin ufaktan kodlama yapalım ve kullandığımız kodları yavaş yavaş tanıyalım.
Her hatalı tanımlamada kurucu olan metodlar bir MalformedURLException hatası gösterir. Bunun 2 nedeni vardır.
1: Adres hatası
2: tanımlanmamış bir protokol kullanılıyor olması.
___________________________
try
{
URL url = new URL (...)
}
catch ( MalformedURLException e )
{
}
____________________________
yukarıda ki hata kodumuz zatede yanlış bir url den kaynaklandığını unutmamak gerekiyor.
kök bilgi hatası veya uzak bir aygıta erişemediği için verdiği bir hata değildir.
Gelin bir URL nesnesini oluşturduktan sonra bir kaç değişkenden bilgi alalım ve kullandığımız metodları ne işe yaradığını tek tek öğrenelim.
___________________________
import java.net.MalformedURLException;
import java.net.URL;
public class URLMetotları (
public static void main (string[] args) {
try {
URL url = new URL {
"http://internetadresi.com:2014"+
"/java/halil/index.html?anahtar=kelime");
System.out.println(url.getProtocol());
System.out.println(url.getHost());
System.out.println(url.getPort());
System.out.println(url.getFile());
System.out.println(url.getPath());
System.out.println(url.getQuery());
System.out.println(url.getRef());
} catch (MalformedURLException e)
e.printerStackTrace();
}
}
}
_____________________________________________
Gelelim bu kodların ne işe yaradığına
String getProtocol(): Protokolü iletir.
String getHost(): Host ismi iletir.
int getPort(); Port numarasını bize iletir eğer yoksa -1 diye gösterir.
String getPath(); URL path bilgilerinin kök bilgisi olmadan verir.
String getFile(); URL Path bilgisini kök bilgisiyle verir.
String getQuery(); Soru işaretinden sonra gelen bilgileri iletir.
Bu günlük bu kadar gece 04:42 olmuş artık uyuma vakti ALLAHın izni ile vakit bol yazacak çok şeyimiz var zaten :) diğer yazımda adres kıyaslama ve URL sınıfı ile dosya erişim kısmına değineceğim.
Ha diyeceksiniz hiç bir şey anlamadım anlamanız için Javayı bilmeniz gerekiyor yaptığım işlem basit bir olay önümüzdeki çalışmalarda aslında bu ufak tanımlamaların ne işe yaradığını daha iyi anlayacaksınız. ;)
Yorumlar(0)