¶àÏß³ÌÊÇjavaµÄÒ»¸öÓÅÊÆ£¬javaʹµÃ³ÌÐòÔ±¿ÉÒԺܷ½±ãµÄ½øÐжàÏ̳߳ÌÐò¿ª·¢¡£»ñµÃ¸üºÃµÄÐÔÄÜ¡£
¹ØÓÚ¶àÏ̵߳ĸÅÄîÒÔ¼°Ò»°ãµÄ¶àÏ̱߳à³Ì£¬±ÈÈçÈçºÎÒÔ¼°ÎªºÎʵÏÖrunnable½Ó¿Ú£¬ÎªºÎstop()»á±»DeprecatedµôµÈµÈ£¬Õâ¸öÇë¿´matrix֮ǰµÄ¶àÏ̱߳à³Ì»ù´¡»òÕßsunµÄjavaÎĵµ¡£
¹ØÓÚ¶àÏ̱߳à³Ì£¬Óм¸µãÕâÀïÒªÌáµ½µÄ£º
1¡£¼ÈÈ»stop()ÊDz»±»ÍƼöµÄ£¬ÄÇôÎÒÃÇÈçºÎÍ£Ö¹Ò»¸öÏß³ÌÄØ£¿Ö±½ÓkillÂð£¿ÔÚÕâÀ±ÊÕß×ܽáÒ»ÖֱȽÏͨÓÃÒ²±È½ÏÎȶ¨µÄ·½·¨£º
class threadtest extend Thread{
//skip some code..
boolean runflag=true;
public synchronized void stopthread()
{
runflag=false;
}
public synchronized boolean getrunflag()
{
return runflag;
}
public void run() {
runflag=true;
try {
while (getrunflag()) {
code1£»
code2£»
//put your code here
}
}
}
catch (IOException e) {
e.printStackTrace();
}
System.out.println(this.getClass().getName()+" stopped");
}
//skip some code..
}
ÕâÑù£¬Ã¿µ±ÐèҪֹͣ¸ÃÏß³Ìʱ£¬Ö»Ðèµ÷ÓÃstopthr ......
Ó¦¸Ã¾ÍÊǰÑjava ÀïÃæµÄ×é¼þ¸ãÃ÷°×
Servlet
ServletÊÇÒ»ÖÖ»ùÓÚwebµÄJava×é¼þ£¬ËüÓÉÈÝÆ÷¹ÜÀí£¬²¢¶¯Ì¬Éú³ÉÆäÄÚÈÝ
ÔòûÓÐͼÐνçÃæ£¬ÔËÐÐÔÚ·þÎñÆ÷¶Ë
ËüÃǶ¼ÓÐÒ»¸öÉú´æÖÜÆÚ£¬°üº¬init()ºÍdestroy()·½·¨
²»ÊǶÀÁ¢µÄÓ¦ÓóÌÐò£¬Ã»ÓÐmain()·½·¨
Ó봫ͳµÄCGIºÍÐí¶àÆäËûÀàËÆCGIµÄ¼¼ÊõÏà±È£¬Java Servlet¾ßÓиü¸ßµÄЧÂÊ£¬¸üÈÝÒ×ʹÓ㬹¦ÄܸüÇ¿´ó£¬¾ßÓиüºÃµÄ¿ÉÒÆÖ²ÐÔ£¬¸ü½ÚʡͶ×Ê¡£ÔÚδÀ´µÄ¼¼Êõ·¢Õ¹¹ý³ÌÖУ¬ServletÓпÉÄܳ¹µ×È¡´úCGI
Servlet API µÄÀàºÍ½Ó¿Ú×é³ÉÁ½¸öJava °ü£¬¼´£ºjavax.servlet ºÍ javax.servlet.http
javax.servlet °üÌṩÁË¿ØÖÆ Servlet ÉúÃüÖÜÆÚËù±ØÐèµÄ Servlet ½Ó¿Ú£¬ÊDZàд Servlet ʱ±ØÐëҪʵÏÖµÄ
javax.servlet.http °üÌṩÁË´ÓServlet ½Ó¿ÚÅÉÉú³öµÄרÃÅÓÃÓÚ´¦Àí HTTP ÇëÇóµÄ³éÏóÀàºÍÒ»°ãµÄ¹¤¾ßÀà
javax.servlet.GenericServlet ºÍ javax.servlet.
http.HttpServlet ÕâÁ½¸ö³éÏóÀàµÄ×ÓÀàÀ´¼ä½ÓʵÏÖServlet ½Ó¿Ú
RequestDispatcher ½Ó¿Ú
¶¨ÒåÒ»ÖÖ¶ÔÏó£¬ÓÃÓÚ´Ó¿Í»§½ÓÊÜÇëÇ󣬲¢½«ÇëÇó·¢Ë͵½·þÎñÆ÷ÉÏÈκÎÖ¸¶¨µÄ×ÊÔ´£¬ÈçÒ»¸öServletºÍ JSP »ò HTML Îļþ
Servlet ½Ó¿Ú
¶¨ÒåÁËËùÓÐ Servlet ±ØÐëʵÏֵķ½ ......
http://iccyx.cn/2007/04/21/java-console-text-area-input-stream/
ÍêÕûÇë¿´ÉÏURL
2001 Äê 10 ÔÂ 16 ÈÕ
ÔÚJava¿ª·¢ÖУ¬¿ØÖÆÌ¨Êä³öÈÔÊÇÒ»¸öÖØÒªµÄ¹¤¾ß£¬µ«Ä¬ÈϵĿØÖÆÌ¨Êä³öÓÐן÷ÖÖ¸÷ÑùµÄ¾ÖÏÞ¡£±¾ÎĽéÉÜÈçºÎÓÃJava¹ÜµÀÁ÷½ØÈ¡¿ØÖÆÌ¨Êä³ö£¬·ÖÎö¹ÜµÀÁ÷Ó¦ÓÃÖÐÓ¦¸Ã×¢ÒâµÄÎÊÌ⣬ÌṩÁ˽ØÈ¡Java³ÌÐòºÍ·ÇJava³ÌÐò¿ØÖÆÌ¨Êä³öµÄʵÀý¡£
¼´Ê¹ÔÚͼÐÎÓû§½çÃæÕ¼Í³ÖεØÎ»µÄ½ñÌ죬¿ØÖÆÌ¨Êä³öÈÔ¾ÉÔÚJava³ÌÐòÖÐÕ¼ÓÐÖØÒªµØÎ»¡£¿ØÖÆÌ¨²»½öÊÇJava³ÌÐòĬÈϵĶÑÕ»¸ú×ٺʹíÎóÐÅÏ¢Êä³ö´°¿Ú£¬¶øÇÒ»¹ÊÇÒ»ÖÖʵÓõĵ÷ÊÔ¹¤¾ß£¨ÌرðÊǶÔϰ¹ßÓÚʹÓÃprintln()µÄÈËÀ´Ëµ£©¡£È»¶ø£¬¿ØÖÆÌ¨´°¿ÚÓÐ×ÅÐí¶à¾ÖÏÞ¡£ÀýÈçÔÚWindows 9xƽ̨ÉÏ£¬DOS¿ØÖÆÌ¨Ö»ÄÜÈÝÄÉ50ÐÐÊä³ö¡£Èç¹ûJava³ÌÐòÒ»´ÎÐÔÏò¿ØÖÆÌ¨Êä³ö´óÁ¿ÄÚÈÝ£¬Òª²é¿´ÕâЩÄÚÈݾͺÜÀ§ÄÑÁË¡£
¶ÔÓÚʹÓÃjavawÕâ¸öÆô¶¯³ÌÐòµÄ¿ª·¢ÕßÀ´Ëµ£¬¿ØÖÆÌ¨´°¿ÚÓÈÆä±¦¹ó¡£ÒòΪÓÃjavawÆô¶¯java³ÌÐòʱ£¬¸ù±¾²»»áÓпØÖÆÌ¨´°¿Ú³öÏÖ¡£Èç¹û³ÌÐòÓöµ½ÁËÎÊÌâ²¢Å׳öÒì³££¬¸ù±¾ÎÞ·¨²é¿´JavaÔËÐÐʱ»·¾³Ð´Èëµ½System.out»òSystem.errµÄµ÷ÓöÑÕ»¸ú×ÙÐÅÏ¢¡£ÎªÁ˲¶»ñ¶ÑÕ»ÐÅÏ¢£¬Ò»Ð©È˲ÉÈ¡ÁËÓÃtry/catch()¿é·â×°main()µÄ·½Ê½£¬µ«ÕâÖÖ·½Ê½²»Ò»¶¨×ÜÊÇÓÐЧ£¬ÔÚJavaÔËÐÐʱµÄijЩʱ¿Ì£¬Ò»Ð©ÃèÊöÐÔ´íÎóÐÅÏ¢ ......
ÔÎÄÁ´½Ó£ºhttp://java.csdn.net/index.php/2009/09/01/java%e5%bc%80%e5%8f%91%e8%80%85%e6%9c%80%e5%b8%b8%e5%8e%bb%e7%9a%8420%e4%b8%aa%e8%8b%b1%e6%96%87%e7%bd%91%e7%ab%99/
JAVA¿ª·¢Õß×ȥµÄ20¸öÓ¢ÎÄÍøÕ¾
1.[http://www.javaalmanac.com] – Java¿ª·¢ÕßÄê¼øÒ»ÊéµÄÔÚÏß°æ±¾. ÒªÏë¿ìËٲ鵽ijÖÖJava¼¼ÇɵÄÓ÷¨¼°Ê¾Àý´úÂë, ÕâÊÇÒ»¸ö²»´íµÄÈ¥´¦.
2.[http://www.onjava.com] – O’ReillyµÄJavaÍøÕ¾. ÿÖܶ¼ÓÐÐÂÎÄÕÂ.
3.[http://java.sun.com] – ¹Ù·½µÄJava¿ª·¢ÕßÍøÕ¾ – ÿÖܶ¼ÓÐÐÂÎÄÕ·¢±í.
4.[http://www.developer.com/java] – ÓÉGamelan.com ά»¤µÄJava¼¼ÊõÎÄÕÂÍøÕ¾.
5.[http://www.java.net] – Sun¹«Ë¾Î¬»¤µÄÒ»¸öJavaÉçÇøÍøÕ¾.
6.[http://www.builder.com] – CnetµÄBuilder.comÍøÕ¾ – ËùÓеļ¼ÊõÎÄÕÂ, ÒÔJavaΪÖ÷.
7.[http://www.ibm.com/developerworks/java] – IBMµÄDeveloperworks¼¼ÊõÍøÕ¾; ÕâÊÇÆäÖеÄJava¼¼ÊõÖ÷Ò³.
8.[http://www.javaworld.com] – ×îÔçµÄÒ»¸öJavaÕ¾µã. ÿÖܸüÐÂJava¼¼ÊõÎÄÕÂ.
9.[http://www.devx.com/java] – DevXά»¤µÄÒ»¸öJava¼¼ÊõÎÄÕÂÍøÕ¾.
10.[http://www ......
Thread-Per-Message PatternµÄ²ÎÓëÕߣº
1. Client£¨Î¯ÍÐÈË£©²ÎÓëÕß
Client²ÎÓëÕß»á¶ÔHost²ÎÓëÕß·¢³öÇëÇó¡£Client²ÎÓëÕß²¢²»ÖªµÀHost²ÎÓëÕß»áÈçºÎʵÏÖÕâ¸öÇëÇó¡£
2. Host²ÎÓëÕß
µ±Host²ÎÓëÕß½ÓÊÕµ½Client²ÎÓëÕßµÄÇëÇóʱ£¬»á½¨Á¢ÐµÄÏ̲߳¢Æô¶¯Ëü¡£
Õâ¸öеÄỊ̈߳¬»áʹÓÃHelper²ÎÓëÕßÀ´´¦ÀíÕâ¸öÇëÇó¡£
3. Helper£¨°ïÖúÕߣ©²ÎÓëÕß
Helper²ÎÓëÕß»á¶ÔHost²ÎÓëÕßÌṩ´¦ÀíÇëÇóµÄ¹¦ÄÜ¡£
-------------------------------
Thread-Per-Message PatternµÄÊÊÓó¡ºÏ£º
1. ÊʺÏÔÚ²Ù×÷˳ÐòÎÞËùνʱʹÓá£
2. ÔÚ²»ÐèÒª·µ»ØÖµµÄʱºò¡£
3. ¿ÉÒÔÓ¦ÓÃÔÚ·þÎñÆ÷µÄÖÆ×÷ÉÏ£¬ÌáÉýÏìÓ¦ÐÔ£¬½µµÍÑÓ³Ùʱ¼ä¡£ ......
Worker Thread PatternµÄ²ÎÓëÕߣº
1. Client£¨Î¯ÍÐÈË£©²ÎÓëÕß
Client²ÎÓëÕ߻ὨÁ¢Request²ÎÓëÕߣ¬²¢´«¸øChannel²ÎÓëÕß¡£
2. Channel£¨Í¨Â·£©²ÎÓëÕß
Channel²ÎÓëÕß»á´ÓClient²ÎÓëÕß»ñÈ¡Request²ÎÓëÕߣ¬´«µÝ¸øWorker²ÎÓëÕß¡£
3. Worker£¨¹¤ÈË£©²ÎÓëÕß
Worker²ÎÓëÕß»á´ÓChannel²ÎÓëÕß»ñÈ¡Request²ÎÓëÕߣ¬²¢Ö´ÐÐÕâ·Ý¹¤×÷¡£µ±¹¤×÷½áÊøÖ®ºó£¬»áÈ¥ÄÃÏÂÒ»¸öRequest²ÎÓëÕß¡£
4. Request£¨ÇëÇ󣩲ÎÓëÕß
Reqeust²ÎÓëÕßÓÃÀ´±íʾ¹¤×÷¡£Request²ÎÓëÕß»á´æ·ÅÖ´ÐÐÕâ·Ý¹¤×÷ËùÐèÒªµÄÊý¾Ý¡£
---------------------------------------------
¿ØÖƳÐÔØÁ¿£º
Worker²ÎÓëÕßµÄÊýÁ¿ÊÇ¿ÉÒÔ×ÔÓÉÉèÖõġ£Ìá¸ßWorker²ÎÓëÕßµÄÊýÁ¿£¬¿ÉÒÔÌá¸ß²¢·¢´¦ÀíµÄ¹¤×÷Á¿¡£µ«ÊÇÈç¹û×¼±¸µÄWorker²ÎÓëÕßÊýÁ¿±Èͬʱ¼äµÄ¹¤×÷Á¿À´µÄ¶à£¬ÓÐЩWorker²ÎÓëÕßÒ²Åɲ»ÉÏÓ󡣬û»î¸É£¬»¹»áÕ¼ÓÃÄÚ´æ¡£ËùÒÔÓбØÒªÅäºÏʵ¼ÊÈí¼þʹÓõÄÐèÒªÀ´µ÷ÕûWorker²ÎÓëÕßµÄÊýÁ¿¡£
---------------------------------------------
InvocationÓëexecutionµÄ·ÖÀ룺
Client²ÎÓëÕ߻ᷢ³ö¹¤×÷ÇëÇ󣬹¤×÷µÄÄÚÈÝÒÔRequestµÄÐÎʽ°ü×°ÆðÀ´£¬´«µÝ¸öChannel²ÎÓëÕß¡£Õ⸠......