Java±à³ÌÄÇЩʶù102——ÍøÂç±à³Ì¼¼Êõ1
13.2.1 ÍøÂç±à³Ì²½Öè
°´ÕÕÇ°ÃæµÄ»ù´¡ÖªÊ¶½éÉÜ£¬ÎÞÂÛʹÓÃTCP·½Ê½»¹ÊÇUDP·½Ê½½øÐÐÍøÂçͨѶ£¬ÍøÂç±à³Ì¶¼ÊÇÓÉ¿Í»§¶ËºÍ·þÎñÆ÷¶Ë×é³É¡£µ±È»£¬B/S½á¹¹µÄ±à³ÌÖÐÖ»ÐèҪʵÏÖ·þÎñÆ÷¶Ë¼´¿É¡£ËùÒÔ£¬ÏÂÃæ½éÉÜÍøÂç±à³ÌµÄ²½Öèʱ£¬¾ùÒÔC/S½á¹¹Îª»ù´¡½øÐнéÉÜ¡£
˵Ã÷£ºÕâÀïµÄ²½ÖèʵÏÖºÍÓïÑÔÎ޹أ¬Ò²¾ÍÊÇ˵£¬Õâ¸ö²½ÖèÊÊÓÃÓÚ¸÷ÖÖÓïÑÔʵÏÖ£¬²»¾ÖÏÞÓÚJavaÓïÑÔ¡£
13.2.1.1 ¿Í»§¶ËÍøÂç±à³Ì²½Öè
¿Í»§¶Ë(Client)ÊÇÖ¸ÍøÂç±à³ÌÖÐÊ×ÏÈ·¢ÆðÁ¬½ÓµÄ³ÌÐò£¬¿Í»§¶ËÒ»°ãʵÏÖ³ÌÐò½çÃæºÍ»ù±¾Â߼ʵÏÖ£¬ÔÚ½øÐÐʵ¼ÊµÄ¿Í»§¶Ë±à³Ìʱ£¬ÎÞÂÛ¿Í»§¶Ë¸´ÔÓ»¹ÊǼòµ¥£¬ÒÔ¼°¿Í»§¶ËʵÏֵķ½Ê½£¬¿Í»§¶ËµÄ±à³ÌÖ÷ÒªÓÉÈý¸ö²½ÖèʵÏÖ£º
1¡¢ ½¨Á¢ÍøÂçÁ¬½Ó
¿Í»§¶ËÍøÂç±à³ÌµÄµÚÒ»²½¶¼Êǽ¨Á¢ÍøÂçÁ¬½Ó¡£ÔÚ½¨Á¢ÍøÂçÁ¬½ÓʱÐèÒªÖ¸¶¨Á¬½Óµ½µÄ·þÎñÆ÷µÄIPµØÖ·ºÍ¶Ë¿ÚºÅ£¬½¨Á¢Íê³ÉÒԺ󣬻áÐγÉÒ»ÌõÐéÄâµÄÁ¬½Ó£¬ºóÐøµÄ²Ù×÷¾Í¿ÉÒÔͨ¹ý¸ÃÁ¬½ÓʵÏÖÊý¾Ý½»»»ÁË¡£
2¡¢ ½»»»Êý¾Ý
Á¬½Ó½¨Á¢ÒԺ󣬾ͿÉÒÔͨ¹ýÕâ¸öÁ¬½Ó½»»»Êý¾ÝÁË¡£½»»»Êý¾ÝÑϸñ°´ÕÕÇëÇóÏìӦģÐͽøÐУ¬ÓÉ¿Í»§¶Ë·¢ËÍÒ»¸öÇëÇóÊý¾Ýµ½·þÎñÆ÷£¬·þÎñÆ÷·´À¡Ò»¸öÏìÓ¦Êý¾Ý¸ø¿Í»§¶Ë£¬Èç¹û¿Í»§¶Ë²»·¢ËÍÇëÇóÔò·þÎñÆ÷¶Ë¾Í²»ÏìÓ¦¡£
¸ù¾ÝÂß¼ÐèÒª£¬¿ÉÒÔ¶à´Î½»»»Êý¾Ý£¬µ«ÊÇ»¹ÊDZØÐë×ñÑÇëÇóÏìӦģÐÍ¡£
3¡¢ ¹Ø±ÕÍøÂçÁ¬½Ó
ÔÚÊý¾Ý½»»»Íê³ÉÒԺ󣬹رÕÍøÂçÁ¬½Ó£¬ÊͷųÌÐòÕ¼ÓõĶ˿ڡ¢ÄÚ´æµÈϵͳ×ÊÔ´£¬½áÊøÍøÂç±à³Ì¡£
×î»ù±¾µÄ²½ÖèÒ»°ã¶¼ÊÇÕâÈý¸ö²½Ö裬ÔÚʵ¼ÊʵÏÖʱ£¬²½Öè2»á³öÏÖÖظ´£¬ÔÚ½øÐдúÂë×é֯ʱ£¬ÓÉÓÚÍøÂç±à³ÌÊDZȽϺÄʱµÄ²Ù×÷£¬ËùÒÔÒ»°ã¿ªÆôרÃŵÄÏÖ³¡½øÐÐÍøÂçͨѶ¡£
13.2.1.2 ·þÎñÆ÷¶ËÍøÂç±à³Ì²½Öè
·þÎñÆ÷¶Ë(Server)ÊÇÖ¸ÔÚÍøÂç±à³ÌÖỶ¯µÈ´ýÁ¬½ÓµÄ³ÌÐò£¬·þÎñÆ÷¶ËÒ»°ãʵÏÖ³ÌÐòµÄºËÐÄÂß¼ÒÔ¼°Êý¾Ý´æ´¢µÈºËÐŦÄÜ¡£·þÎñÆ÷¶ËµÄ±à³Ì²½ÖèºÍ¿Í»§¶Ë²»Í¬£¬ÊÇÓÉËĸö²½ÖèʵÏÖ£¬ÒÀ´ÎÊÇ£º
1¡¢ ¼àÌý¶Ë¿Ú
·þÎñÆ÷¶ËÊôÓÚ±»¶¯µÈ´ýÁ¬½Ó£¬ËùÒÔ·þÎñÆ÷¶ËÆô¶¯ÒԺ󣬲»ÐèÒª·¢ÆðÁ¬½Ó£¬¶øÖ»ÐèÒª¼àÌý±¾µØ¼ÆËã»úµÄij¸ö¹Ì¶¨¶Ë¿Ú¼´¿É¡£
Õâ¸ö¶Ë¿Ú¾ÍÊÇ·þÎñÆ÷¶Ë¿ª·Å¸ø¿Í»§¶ËµÄ¶Ë¿Ú£¬·þÎñÆ÷¶Ë³ÌÐòÔËÐеı¾µØ¼ÆËã»úµÄIPµØÖ·¾ÍÊÇ·þÎñÆ÷¶Ë³ÌÐòµÄIPµØÖ·¡£
2¡¢ »ñµÃÁ¬½Ó
µ±¿Í»§¶ËÁ¬½Óµ½·þÎñÆ÷¶Ëʱ£¬·þÎñÆ÷¶Ë¾Í¿ÉÒ
Ïà¹ØÎĵµ£º
/**
* ´´½¨ËõÂÔͼƬ
*
* @param orgpath
* @param filename
* @return
* @description: ÃèÊö
*/
//´Ë·½·¨¶ÔÓÚsshÏîÄ¿²¢ÇÒÕë¶Ô ÉÏ´«¹¦ÄÜʱ£¬·Ç³£ÓÐÓÃ
public static Boolean createAbbreviateImg(String orgpath, String filename) {
Boolea ......
public boolean writeXML(String content, String filename)
{
String savepath;
FileOutputStream fout;
// log.info("content:"+content+ ......
ÔÚJavaÖУ¬synchronized¹Ø¼ü×ÖΪ·ÀÖ¹×ÊÔ´³åÍ»ÌṩÁËÖ§³Ö£¬Æä×÷ÓÃÓòÓжþÖÖ£º
ʵÀý·¶Î§¡£
¶ÔÏóʵÀý·¶Î§ÄÚsynchronizedʹÓõÄÁ½ÖÖÐÎʽ£º
ʵÀý·¶Î§Í¬²½·½·¨
publicd class syncTest {
…
synchronized void aMethod() {
//ÐèҪͬ²½Ê¹ÓõĴúÂë
}
}
synchronized aMethod(){}¿ÉÒÔ·ÀÖ¹¶à¸öÏß³Ìͬʱ ......
±¾×÷Æ·²ÉÓÃ֪ʶ¹²ÏíÊðÃû-·ÇÉÌÒµÐÔʹÓÃ-Ïàͬ·½Ê½¹²Ïí 2.5 Öйú´ó½Ðí¿ÉÐÒé½øÐÐÐí¿É¡£
ÎÞÂÛÔÚC/C++»¹ÊÇÔÚJava£¬Ç¿ÖÆÀàÐÍת»»ÒѾ²»ÊÇÄ°ÉúµÄ¸ÅÄîÁË¡£µ«ÊÇÒªÏëÈ«ÃæÕÆÎÕJavaÖÐÀàÐÍת»»µÄÒªµã¿É²»ÄÇô¼òµ¥£¬±¾ÎĽ«´øÁì´ó¼ÒһͬÁ˽âÓйØJavaÀàÐÍת»»µÄËùÓÐÒªµã¡£
ÊýÖµÀàÐ͵ÄÀàÐÍת»»
ÖÚËùÖÜÖª£¬JavaÓÐÁ½ÖÖÊý¾ÝÀàÐÍ£º»ù±¾Êý¾Ý ......