📄 j-chat-3-2.html
字号:
var topnextsectionout=new Image(108,15); var bottomnextsectionover=new Image(108,15); var bottomnextsectionout=new Image(108,15); menu1over.src="imagemaster/himenu1.jpg"; menu1out.src="imagemaster/menu1.jpg"; menu2over.src="imagemaster/himenu2.jpg"; menu2out.src="imagemaster/menu2.jpg"; menu3over.src="imagemaster/himenu3.jpg"; menu3out.src="imagemaster/menu3.jpg"; menu4over.src="imagemaster/himenu4.jpg"; menu4out.src="imagemaster/menu4.jpg"; menu5over.src="imagemaster/himenu5.jpg"; menu5out.src="imagemaster/menu5.jpg"; menu6over.src="imagemaster/himenu6.jpg"; menu6out.src="imagemaster/menu6.jpg"; menu7over.src="imagemaster/himenu7.jpg"; menu7out.src="imagemaster/menu7.jpg"; menu8over.src="imagemaster/himenu8.jpg"; menu8out.src="imagemaster/menu8.jpg"; menu9over.src="imagemaster/himenu9.jpg"; menu9out.src="imagemaster/menu9.jpg"; menu10over.src="imagemaster/himenu10.jpg"; menu10out.src="imagemaster/menu10.jpg"; menu11over.src="imagemaster/himenu11.jpg"; menu11out.src="imagemaster/menu11.jpg"; menu12over.src="imagemaster/himenu12.jpg"; menu12out.src="imagemaster/menu12.jpg"; var mainblurb="Main menu"; var sectionblurb="Section menu"; var feedbackblurb="Give feedback on this tutorial"; var previousblurb="Go to previous panel"; var nextblurb="Go to next panel"; var nextsectionblurb="Go to next section"; topmainover.src="../i/h-main.gif"; topmainout.src="../i/main.gif"; bottommainover.src="../i/h-main.gif"; bottommainout.src="../i/main.gif"; topsectionover.src="../i/h-section.gif"; topsectionout.src="../i/section.gif"; bottomsectionover.src="../i/h-section.gif"; bottomsectionout.src="../i/section.gif"; topfeedbackover.src="../i/h-feedback.gif"; topfeedbackout.src="../i/feedback.gif"; bottomfeedbackover.src="../i/h-feedback.gif"; bottomfeedbackout.src="../i/feedback.gif"; toppreviousover.src="../i/h-previous.gif"; toppreviousout.src="../i/previous.gif"; bottompreviousover.src="../i/h-previous.gif"; bottompreviousout.src="../i/previous.gif"; topnextover.src="../i/h-next.gif"; topnextout.src="../i/next.gif"; bottomnextover.src="../i/h-next.gif"; bottomnextout.src="../i/next.gif"; topnextsectionout.src="../i/nextsection.gif"; topnextsectionover.src="../i/h-nextsection.gif"; bottomnextsectionout.src="../i/nextsection.gif"; bottomnextsectionover.src="../i/h-nextsection.gif"; } function iOut(image) { if (browser=="N3")document[image].src=eval(image + "out.src"); } function iOver(image) { if (browser=="N3")document[image].src=eval(image + "over.src"); } // --></script><script src="../i/emailfriend.js" language="javascript"></script><a href="#navskip"><img border="0" alt="Skip to main content" src="http://www.ibm.com/i/c.gif"></a><table cellpadding="0" cellspacing="0" border="0" width="100%"><tr bgcolor="#006699"><td width="300"><table cellpadding="0" cellspacing="0" border="0" width="300"><tr bgcolor="#006699"><td width="150"><img height="25" width="150" alt="IBM" src="../i/mast_logo.gif"></td><td background="../i/mgradient.gif" width="150"><font face="Verdana, sans-serif" color="#99ccff" size="-2"><b> </b></font><br><img alt="" height="1" width="150" src="http://www.ibm.com/i/c.gif"></td></tr></table></td><td width="300" align="left"><table cellpadding="0" cellspacing="0" border="0" width="300"><tr><td width="100"><a href="http://www.ibm.com/shop1/"><img alt="Shop" height="25" width="100" src="../i/shopibm.gif" border="0"></a></td><td width="100"><a href="http://www.ibm.com/support/"><img alt="Support" height="25" width="100" src="../i/support.gif" border="0"></a></td><td width="100"><a href="http://www.ibm.com/download/"><img alt="Downloads" height="25" width="100" src="../i/downloads.gif" border="0"></a></td></tr></table></td></tr></table><table cellpadding="0" cellspacing="0" border="0" width="100%"><tr bgcolor="#000000"><td><table cellpadding="0" cellspacing="0" border="0" width="600"><tr><td width="150" bgcolor="#006699"><img alt="" height="21" width="150" src="../i/mast_lnav_sp.gif"></td><td bgcolor="#000000" colspan="4"><table height="21" cellpadding="0" cellspacing="0" border="0"><tr><td align="center" width="79" bgcolor="#000000" height="21"><a href="http://www.ibm.com/home/" style="color: #ffffff;" class="nav"><font face="Verdana, sans-serif" color="#ffffff" size="-2"><b>IBM Home</b></font></a></td><td width="1" bgcolor="#959595"><img alt="" height="1" width="1" src="http://www.ibm.com/i/c.gif"></td><td align="center" width="74" bgcolor="#000000" height="21"><a href="http://www.ibm.com/products/" style="color: #ffffff;" class="nav"><font face="Verdana, sans-serif" color="#ffffff" size="-2"><b>Products</b></font></a></td><td width="1" bgcolor="#959595"><img alt="" height="1" width="1" src="http://www.ibm.com/i/c.gif"></td><td align="center" width="81" bgcolor="#000000" height="21"><a href="http://www.ibm.com/services/" style="color: #ffffff;" class="nav"><font face="Verdana, sans-serif" color="#ffffff" size="-2"><b>Consulting</b></font></a></td><td width="1" bgcolor="#959595"><img alt="" height="1" width="1" src="http://www.ibm.com/i/c.gif"></td><td align="center" width="81" bgcolor="#000000" height="21"><a href="http://www.ibm.com/solutions/" style="color: #ffffff;" class="nav"><font face="Verdana, sans-serif" color="#ffffff" size="-2"><b>Industries</b></font></a></td><td width="1" bgcolor="#959595"><img alt="" height="1" width="1" src="http://www.ibm.com/i/c.gif"></td><td align="center" width="57" bgcolor="#000000" height="21"><a href="http://www.ibm.com/news/" style="color: #ffffff;" class="nav"><font face="Verdana, sans-serif" color="#ffffff" size="-2"><b>News</b></font></a></td><td width="1" bgcolor="#959595"><img alt="" height="1" width="1" src="http://www.ibm.com/i/c.gif"></td><td align="center" width="78" bgcolor="#000000" height="21"><a href="http://www.ibm.com/ibm/" style="color: #ffffff;" class="nav"><font face="Verdana, sans-serif" color="#ffffff" size="-2"><b>About IBM</b></font></a></td></tr></table></td></tr></table></td></tr></table><TABLE border="0" cellpadding="0" cellspacing="0" width="100%"><TR><TD width="150" height="1" bgcolor="#ffffff"><IMG alt="" height="1" width="150" src="http://www.ibm.com/i/c.gif"></TD></TR><TR><TD width="150" height="3" bgcolor="#cc6633"><IMG alt="" height="3" width="150" src="http://www.ibm.com/i/c.gif"></TD></TR><TR><TD width="150" height="1" bgcolor="#333333"><IMG alt="" height="1" width="150" src="http://www.ibm.com/i/c.gif"></TD></TR><TR><TD width="150" height="1" bgcolor="#000000"><IMG alt="" height="1" width="150" src="http://www.ibm.com/i/c.gif"></TD></TR></TABLE><table border="0" cellpadding="0" cellspacing="0" width="100%"><tr><td><font face="Verdana, sans-serif" size="-1"><a href="http://www.ibm.com/">IBM</a> : <a href="http://www.ibm.com/developer/">developerWorks</a> : <a href="http://www.ibm.com/developer/java/">Java</a> : <a href="http://www-105.ibm.com/developerworks/education.nsf/dw/java-onlinecourse-bytitle">Education - online courses</a></font><br x="7"><img src="imagemaster/masthead.jpg" alt="Building a Java chat server"></td><td width="*" valign="bottom" align="right"><a border="0" href="j-chat.zip"><img alt="Download tutorial zip file" border="0" src="../i/icon-zip.gif"></a><a border="0" href="j-chat-ltr.pdf"><img alt="View letter-sized PDF file" border="0" src="../i/icon-pdf-ltr.gif"></a><a border="0" href="j-chat-a4.pdf"><img alt="View A4-sized PDF file" border="0" src="../i/icon-pdf-a4.gif"></a><a href="javascript:void newWindow()" border="0"><img alt="E-mail this tutorial to a friend" border="0" src="../i/icon-email.gif"></a></td></tr><tr><td height="2" colspan="2"><img height="2" width="1" src="http://www.ibm.com/i/c.gif"></td></tr></table><TABLE border="0" cellpadding="0" cellspacing="0" width="100%"><TR><TD width="150" height="1" bgcolor="#000000" colspan="6"><IMG alt="" height="1" width="150" src="http://www.ibm.com/i/c.gif"></TD></TR><TR><TD background="../i/sw-gold.gif"><a border="0" href="index.html" onMouseOver="iOver('topmain'); iOver('bottommain'); self.status=mainblurb; return true;" onMouseOut="iOut('topmain'); iOut('bottommain'); self.status=''; return true;"><img alt="Main menu" border="0" src="../i/main.gif" name="topmain"></a></TD><TD background="../i/sw-gold.gif"><a border="0" onMouseOver="iOver('topsection'); iOver('bottomsection'); self.status=sectionblurb; return true;" onMouseOut="iOut('topsection'); iOut('bottomsection'); self.status=''; return true;" href="index3.html"><img alt="Section menu" border="0" src="../i/section.gif" name="topsection"></a></TD><TD background="../i/sw-gold.gif"><a border="0" onMouseOver="iOver('topfeedback'); iOver('bottomfeedback'); self.status=feedbackblurb; return true;" onMouseOut="iOut('topfeedback'); iOut('bottomfeedback'); self.status=''; return true;" href="j-chat-11-3.html"><img alt="Give feedback on this tutorial" border="0" src="../i/feedback.gif" name="topfeedback"></a></TD><TD width="100%" background="../i/sw-gold.gif"><img src="http://www.ibm.com/i/c.gif"></TD><TD background="../i/sw-gold.gif"><a border="0" onMouseOver="iOver('topprevious'); iOver('bottomprevious'); self.status=previousblurb; return true;" onMouseOut="iOut('topprevious'); iOut('bottomprevious'); self.status=''; return true;" href="j-chat-3-1.html"><img alt="Previous" border="0" src="../i/previous.gif" name="topprevious"></a></TD><TD background="../i/sw-gold.gif"><a border="0" onMouseOver="iOver('topnext'); iOver('bottomnext'); self.status=nextblurb; return true;" onMouseOut="iOut('topnext'); iOut('bottomnext'); self.status=''; return true;" href="j-chat-3-3.html"><img alt="Next" border="0" src="../i/next.gif" name="topnext"></a></TD></TR></TABLE><table bgcolor="ffffff" cellspacing="0" cellpadding="2" border="0" height="400" width="100%"><tr valign="bottom"><a name="navskip"></a><td height="25" colspan="4"><img border="0" height="25" width="562" src="imagemaster/titlebar3.jpg" alt="3. First things first"></td></tr><tr><td bgcolor="ffffff" width="15"> </td><td bgcolor="ffffff" width="12"> </td><td valign="top" align="left" bgcolor="ffffff" width="*"><p><br x="7"><table cellspacing="0" cellpadding="0" border="0"><tr><td width="90%"><font size="4" face="Verdana, Arial, Helvetica"><b>Listening on a port</b></font></td><td width="200" align="right"><font size="1" face="Verdana, Arial, Helvetica"><nobr> page 2 of 7</nobr></font></td></tr></table><br x="7"><br x="7"></p><font size="2" face="Verdana, Arial, Helvetica"><p>The first thing we have to do is to get ready to receive incoming
connections. To do this, we must listen on a port.</p><p>A port can be thought of as an address within a single
computer. Remember that often a single machine might serve as a
Web server, a chat server, an FTP server, and several other kinds of
servers at the same time. Because of this, a connection to a server
needs to specify not only the address of the machine itself, but also
the particular service within the machine. This internal address is a
port and is represented by a single integer between 1 and 65535.</p><p>Many standard services have a dedicated port number. For example,
telnet uses port 23, FTP uses ports 20 and 21, and Web servers, by
default, use port 80. Since our chat system is not famous (yet),
we're going to have to use one of the port numbers allocated for general
use.</p><p>We'll use port 5000. This means that our
server is going to <i>listen</i> for connections on port 5000. Our
clients, when connecting to our server machine, will specify that they
want to connect to port 5000 on our server machine. This way, our
clients and our server will be able to talk.</p><br x="7"></font></td></tr></table><TABLE border="0" cellpadding="0" cellspacing="0" width="100%"><TR><TD background="../i/sw-gold.gif"><a border="0" href="index.html" onMouseOver="iOver('topmain'); iOver('bottommain'); self.status=mainblurb; return true;" onMouseOut="iOut('topmain'); iOut('bottommain'); self.status=''; return true;"><img alt="Main menu" border="0" src="../i/main.gif" name="bottommain"></a></TD><TD background="../i/sw-gold.gif"><a border="0" onMouseOver="iOver('topsection'); iOver('bottomsection'); self.status=sectionblurb; return true;" onMouseOut="iOut('topsection'); iOut('bottomsection'); self.status=''; return true;" href="index3.html"><img alt="Section menu" border="0" src="../i/section.gif" name="bottomsection"></a></TD><TD background="../i/sw-gold.gif"><a border="0" onMouseOver="iOver('topfeedback'); iOver('bottomfeedback'); self.status=feedbackblurb; return true;" onMouseOut="iOut('topfeedback'); iOut('bottomfeedback'); self.status=''; return true;" href="j-chat-11-3.html"><img alt="Give feedback on this tutorial" border="0" src="../i/feedback.gif" name="bottomfeedback"></a></TD><TD width="100%" background="../i/sw-gold.gif"><img src="http://www.ibm.com/i/c.gif"></TD><TD background="../i/sw-gold.gif"><a border="0" onMouseOver="iOver('topprevious'); iOver('bottomprevious'); self.status=previousblurb; return true;" onMouseOut="iOut('topprevious'); iOut('bottomprevious'); self.status=''; return true;" href="j-chat-3-1.html"><img alt="Previous" border="0" src="../i/previous.gif" name="bottomprevious"></a></TD><TD background="../i/sw-gold.gif"><a border="0" onMouseOver="iOver('topnext'); iOver('bottomnext'); self.status=nextblurb; return true;" onMouseOut="iOut('topnext'); iOut('bottomnext'); self.status=''; return true;" href="j-chat-3-3.html"><img alt="Next" border="0" src="../i/next.gif" name="bottomnext"></a></TD></TR><TR><TD width="150" height="1" bgcolor="#000000" colspan="6"><IMG alt="" height="1" width="150" src="http://www.ibm.com/i/c.gif"></TD></TR></TABLE><TABLE cellpadding="0" cellspacing="0" border="0"><TR><TD width="182"><TABLE cellpadding="0" cellspacing="0" border="0" width="182"><TR bgcolor="#000000"><TD align="center" width="60" class="mast"><a style="text-decoration: none; color: #ffffff;" class="nav" href="http://www.ibm.com/privacy/"><font face="Arial, Verdana" size="2">Privacy</font></a></TD><TD width="1" bgcolor="#959595"><img alt="" border="0" height="20" width="1" src="http://www.ibm.com/i/c.gif"></TD><TD align="center" width="60" class="mast"><a style="text-decoration: none; color: #ffffff;" class="nav" href="http://www.ibm.com/legal/"><font face="Arial, Verdana" size="2">Legal</font></a></TD><TD width="1" bgcolor="#959595"><img alt="" border="0" height="20" width="1" src="http://www.ibm.com/i/c.gif"></TD><TD align="center" width="60" class="mast"><a style="text-decoration: none; color: #ffffff;" class="nav" href="http://www.ibm.com/contact/"><font face="Arial, Verdana" size="2">Contact</font></a></TD><TD width="1" bgcolor="#959595"><img alt="" border="0" height="21" width="1" src="http://www.ibm.com/i/c.gif"></TD></TR><TR bgcolor="#ffffff"><TD><img alt="" border="0" height="1" width="1" src="http://www.ibm.com/i/c.gif"></TD></TR></TABLE></TD><TD width="100%"><TABLE cellpadding="0" cellspacing="0" border="0" width="100%"><TR height="21" bgcolor="#000000"><TD><img alt="" border="0" height="21" width="1" src="http://www.ibm.com/i/c.gif"></TD></TR><TR bgcolor="#ffffff"><TD><img alt="" border="0" height="1" width="1" src="http://www.ibm.com/i/c.gif"></TD></TR></TABLE></TD></TR></TABLE></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -