Saturday, January 14, 2012

Java - Network programming - 2

කට්ටියට දැන් Network programming ගැන normal idea එකක් තියනවා නේ. එහෙනම් මම පොඩි Server කෑල්ලක් හදන හැටි කියල දෙන්නම්. මම දැන් හදන්නේ TCP පාවිච්චි කරලා. ඊළඟ එකෙන් UDP server එකක් හදන හැටි බලමු.

මම කලින් thread එකෙ කිව්වා වගේ TCP server හදන්න අපි පාවිච්චි කරන්න ඕනේ ServerSocket කියන එක. එකේ ඇතුලට අපි listen කරන් ඉන්න port එක දෙන්න ඔනේ.
e.g. - new ServerSocket(20000);

මෙන්න code එක

class SimpleTCPServer{
public static void main(String[] args) {
try {
ServerSocket s=new ServerSocket(20000);
} catch (IOException ex) {
System.out.println(ex);
}
}
}

මේ එක complile කරලා run කලාට මොකුත් වෙන්නෑ.
කට්ටියට මුලින්ම කියනන් අමතක උනා. Command prompt ගිහින් netstat -ao ගහලා දැනට machine එක listen කරන් ඉන්න port numbers ටික ඉස්සල්ලා බලාගන්න.

මෙන්න මම ගත්ත screen shot එකක්

කට්ටියට පේනවා ඇතිනේ TCP යටතේ 20000 කියන port එකේ මොකුත් නෑ.

දැන් අපි හදාගත්ත ServerSoocket එකට කියනන් ඕනේ listen කරන්න කියලා. ඒකට අපි use කරන්නේ accept() කියන method එක. එතකොට වෙන්නේ Serversocket එක කව්රු හරි ඒකට connect වෙන්න හදනවද කියල බලන් ඉන්න එක. හරියට අපි telephone එක ring වෙනවද කියලා අහන් ඉන්නවා වගේ වැඩක් තමයි මෙතනදී වෙන්නේ.
කව්රු හරි connect උනොත් එහෙම ඒ connect වෙච්ච එකත් එක්ක talk කරන්න මූ අපිට random socket එකක් හදලා දෙනවා.එතකොට ඒ හැදෙන socket එක හරහා ඔනේ වැඩ කරගතෑකි.

මෙන්න code එක

class SimpleTCPServer{
public static void main(String[] args) {
try {
ServerSocket s=new ServerSocket(20000);
s.accept();
} catch (IOException ex) {
System.out.println(ex);
}
}
}

මෙන්න මේ code එක compile කරලා run කරලා බලන්න. ඊට පස්සේ ආපහු command prompt එකට ගිහින් netstat -ao ගහලා check කරලා බලන්න.
මෙන්න මගේ screenshot එක




ඔන්න දැන් අපි server listen කරන් ඉන්න part එක හදලා ඉවරයි. මේක හරහා කොහොමද වැඩ කරන්නේ කියන එක ඉස්සරහට කියලා දෙන්නම්.
කට්ටියට තේරුන්නැති දෙයක් තියනවනම් pm කරන්න.
ජය වේවා

කට්ට්යට මොනවා හරි තේරුනානම් සන්තෝසයි

1 comment:

  1. පට්ට.....දිගටම ලියන්න....ජය වේවා...!!!

    ReplyDelete