ÁÉ­}ºô > IT§Þ³N Java > §Þ³N°ÊºA
  IT¸ê°T·j¯Á
 
IT²£«~·j¯Á
[µ{¦¡¶}µo][ºôºÞ¥@¬É][ºô¸ô¦w¥þ][¼Æ¾Ú®w§Þ³N]
[§@·~¨t²Î][¹Å»«²á¤Ñ¡P½u¤W³X½Í][¬¡°Ê¶°ÀA]
[ºë±m±MÃD][Symantec±M°Ï][­q¾\IT§Þ³N¶g¥Z]
[¶}µo½×¾Â][ºôºÞ½×¾Â][¦w¥þ½×¾Â][¼Æ¾Ú®w½×¾Â]
[§@·~¨t²Î½×¾Â][Sybase±M°Ï][IBM dW§Þ³N±M°Ï]
[¯f¬r¨D§U][¯f¬r»Pº|¬}¼½³ø][¤åÀÉ¡P·½½X¤U¸ü]

¦p¦ó¦bWeb¤uµ{¤¤¹ê²{¥ô°È­p¹º½Õ«×

µo§G®É¶¡¡G2006.07.07 09:07     ¨Ó·½¡GÁÉ­}ºô½×¾Â    §@ªÌ¡G

 

¦n¦hªB¤Í¥Î¹LWindowsªº¥ô°È­p¹º¡A¤]¦³¤£¤Öµ{¦¡°g¦Û¤v´¿¼g¹L®ÉÄÁ³øÄµ¡B¨t²Î¦Û°ÊÃö¾÷µ¥½ì¨ýµ{¦¡¡A¥i«o«Ü¤Ö¦³ªB¤Í¦bWeb¤uµ{¤¤¹ê²{¹LÃþ¦ü¥\¯à¡C¤µ¤Ñ¦³ªÅ§âµ§ªÌ¥ý«e´¿¦bTomcat¤W¹ê²{ªºÃþ¦ü¥\¯à¡A·h¥X¨Ó»P¤j®a¦@¥Î¡C
    ¦­¦b´X¦~«e¡A§Ú¤½¥q¸ò¬Y¥«°]¬F§½¦X§@¶µ¥Ø¶}µo¡A¬°¥[±j°]¬F§½¹ï©ÒÄݳæ¦ì°]°Èª¬ªpªº¦³®ÄºÊºÞ¡A¶}µo¡B¹ê¬I¤F°]¬F§½¼Æ¾Ú¤¤¤ß¶µ¥Ø¡C¦¹¶µ¥Ø±Ä¥ÎB/S¥[C/S²V¦Xµ²ºc¼Ò¦¡¡C°]¬F§½Web¦øªA¾¹¤W¬[³]¼Æ¾Ú¦P¨B±µ¦¬¸Ë¸m¡A¥Ñ¥«Äݳæ¦ì¨C¤Ñ¤U¯Z«e§â°]°È¸ê°T³q¹LHTTP¨óij¤W¶Ç¦Ü°]¬F§½¤¤¤ß¦øªA¾¹¡A»PWeb¦øªA¾¹¤Wªº±µ¦¬¸Ë¸m¹ï±µ¡C°]¬F§½¤º³¡¦U³¡ªù»Ý­n¬d¾\¤j¶q°]°È¸ê°T¡AÀò¨ú§¹³Æªº¥«Äݳæ¦ì·í«e°]°Èª¬ªp¸ê°T¡A¦U³¡ªù«ö¾¯à¹º¤À¡A»Ý­n·Ç½TªºÀò¨ú¦U³¡ªù¦U¦Û©ÒÃöª`ªº¶×Á`¸ê°T¡A¥H°]¬F³øªíªº§Î¦¡´£¨Ñ¡C 
    ¦]°]¬F¼Æ¾Ú¶q¤j¡A¹ê®É­pºâ°]¬F³øªí³t«×¸ûºC¡A·íªì´N¦Ò¼{¥Î³øªí½w¦s¨Ó´î»´¦øªA¾¹ªº­t¾á¡A¦ý¥Î½w¦s»Ý­n¤@­Ó¦X²zªº½w¦s§ó·s¾÷¨î¡C¦Ò¼{¨ì¦U¥«Äݳæ¦ì¨C¤Ñ¤U¯Z«e¤~§â°]°È¼Æ¾Ú¤W¶Ç¡A°]¬F§½¨C¤Ñ©Ò¬d¬Ý¨ìªº°]°È¸ê°T¨ä¹ê¨Ã¤£¥]¬A·í¤Ñ¡]°£«D¦³¬Y¦ì»â¾Éµ¥¨ì©ÒÄݳæ¦ì¥þ³¡¤W¶Ç§¹¤§«á¤~¨Ó¬d¬Ý¸ê°T¡AÀ³¸Ó¤w¸g¤U¯Z¤F¡^¡A©Ò¥H­n¬O¯à¹ê²{¥ô°È­p¹º½Õ«×¡A¦b¨C±ß²`©]§â·í¤Ñ¤Î¾ú¥v°]°È¸ê°T¶×Á`¡A§ó·s½w¦s¡A³t«×²~ÀV¤£´N¸Ñ¨M¤F¶Ü¡C
    ·í®É¥Ñ©ó¨t²Î®Ö¤ß¬O°ò©óWeb³¡¸pªº¡A³øªí­pºâ¤ÞÀº¤]¬ÛÀ³ªº³¡¸p¦bTomcat®e¾¹¤W¡A¦]¦¹¦pªG·Q­n­É¥ÎWindowsªº¥ô°È­p¹º¨Ó¹ê²{©w®É­pºâ¡A´N»Ý­nÃB¥~½s¼g´¶³q®à­±À³¥Îµ{¦¡¤¶­±¡AµyÅã½ÆÂø¡C©ó¬O´NµZ¿iµÛ·Q¦bWeb¤W¹ê²{¡A¸g¹L¬d¾\¸û¦h¬ÛÃö¸ê®Æ¡Aµo²{Java©w®É¾¹¡]java.util.Timer¡^¦³©w®ÉIJµo­p¹º¥ô°Èªº¥\¯à¡A³q¹L°t¸m©w®É¾¹ªº¶¡¹j®É¶¡¡A¦b¬Y¤@¶¡¹j®É¶¡¬q¤§«á·|¦Û°Ê¦³³W«ßªº½Õ¥Î¹w¥ý©Ò¦w±Æªº­p¹º¥ô°È¡]java.util.TimerTask¡^¡C¥t¥~¡A¥Ñ©ó§Ú­Ì§Æ±æ·íWeb¤uµ{±Ò°Ê®É¡A©w®É¾¹¯à¦Û°Ê¶}©l­p®É¡A¦b¾ã­ÓWeb¤uµ{ªº¥Í©R´ÁùØ¡A©w®É¾¹¯à¦b¨C±ß²`©]IJµo¤@¦¸³øªí­pºâ¤ÞÀº¡C¦]¦¹©w®É¾¹ªº¦s©ñ¦ì¸m¤]­È±o¦Ò¬d¡A¤£¯à²³æªº¦s¦b©ó³æ­ÓServlet©ÎJavaBean¤¤¡A¥²¶·¯àÅý©w®É¾¹±J¥Dªº¦s¬¡´Á¬°¾ã­ÓWeb¤uµ{¥Í©R´Á¡A¦b¤uµ{±Ò°Ê®É¯à¦Û°Ê¸ü¤J¹B¦æ¡Cµ²¦X³o¨âÂI¡A¸òServlet¤W¤U¤å¦³Ãöªº°»Å¥¾¹´N³Ì¦X¾A¤£¹L¤F¡A³q¹L¦b¤uµ{ªº°t¸m¤å¥ó¤¤¥[¥H¦X²z°t¸m¡A·|¦b¤uµ{±Ò°Ê®É¦Û°Ê¹B¦æ¡A¨Ã¦b¾ã­Ó¤uµ{¥Í©R´Á¤¤³B©óºÊÅ¥ª¬ºA¡C
    ¤U­±´NServlet°»Å¥¾¹µ²¦XJava©w®É¾¹¨ÓÁ¿­z¾ã­Ó¹ê²{¹Lµ{¡C­n¹B¥ÎServlet°»Å¥¾¹»Ý­n¹ê²{javax.servlet.ServletContextListener¤¶­±¡A¦P®É¹ê²{¥¦ªºcontextInitialized(ServletContextEvent event)©McontextDestroyed(ServletContextEvent event)¨â­Ó¤¶­±¨ç¼Æ¡C¦Ò¼{©w®É¾¹¦³­Ó«Ø¥ß©M¾P·´ªº¹Lµ{¡A¬Ý¤F«e­±¨â­Ó¤¶­±¨ç¼Æ¡A´N¤£®e¸mºÃªº§â«Ø¥ßªº¹Lµ{¸m¤JcontextInitialized¡A§â¾P·´ªº¹Lµ{¸m¤JcontextDestroyed¤F¡C
    §Ú§âServletContextListenerªº¹ê²{Ãþ¨ú¦W¬°ContextListener,¦b¨ä¤º²K¥[¤@­Ó©w®É¾¹¡A¥Ü¨Ò¥N½X¦p¤U©Ò¥Ü¡]¬°¦Ò¼{½g´T¡A¶È´£¨Ñ³¡¤À¥N½X¨ÑŪªÌ°Ñ¦Ò¡^¡G

  1.     private java.util.Timer timer = null;
  2.     public void contextInitialized(ServletContextEvent event) {
  3.         timer = new java.util.Timer(true);
  4.         event.getServletContext().log("©w®É¾¹¤w±Ò°Ê");        
  5.          timer.schedule(new MyTask(event.getServletContext()), 0, 60*60*1000);
  6.         event.getServletContext().log("¤w¸g²K¥[¥ô°È½Õ«×ªí");
  7.     }
  8.     public void contextDestroyed(ServletContextEvent event) {
  9.         timer.cancel();
  10.         event.getServletContext().log("©w®É¾¹¾P·´");
  11.     }


    ¥H¤W¥N½X¤¤, timer.schedule(new MyTask(event.getServletContext()), 0, 60*60*1000)³o¤@¦æ¬°©w®É¾¹½Õ«×»y¥y¡A¨ä¤¤MyTask¬O¦Û©w¸q»Ý­n³Q½Õ«×ªº°õ¦æ¥ô°È¡]¦b§Úªº°]¬F¼Æ¾Ú¤¤¤ß¶µ¥Ø¤¤´N¬O³øªí­pºâ¤ÞÀº¤J¤f¡^¡A±qjava.util.TimerTaskÄ~©Ó¡A¤U­±·|­«ÂIÁ¿­z¡A²Ä¤T­Ó°Ñ¼Æªí¥Ü¨C¤p®É(§Y60*60*1000²@¬í)³QIJµo¤@¦¸¡A¤¤¶¡°Ñ¼Æ0ªí¥ÜµL©µ¿ð¡C¨ä¥L¥N½X¬Û·í²³æ¡A¤£¦A¸Ô²Ó»¡©ú¡C
   ¤U­±¤¶²ÐMyTaskªº¹ê²{¡A¤W­±ªº¥N½X¤¤¬Ý¨ì¤F¦bºc³yMyTask®É¡A¶Ç¤J¤Fjavax.servlet.ServletContextÃþ«¬°Ñ¼Æ,¬O¬°°O¿ýServlet¤é»x¤è«K¦Ó¶Ç¤J¡A¦]¦¹»Ý­n­«¸üMyTaskªººc³y¨ç¼Æ¡]¨ä¤÷Ãþjava.util.TimerTask­ìºc³y¨ç¼Æ¬O¨S¦³°Ñ¼Æªº¡^¡C¦btimer.schedule()ªº½Õ«×¤¤,³]¸m¤F¨C¤p®É½Õ«×¤@¦¸,¦]¦¹¦pªG·Q¹ê²{½Õ«×¥ô°È¨C24¤p®É³Q°õ¦æ¤@¦¸¡AÁٻݭn§PÂ_¤@¤U®ÉÄÁÂI¡A¥H±`¶qC_SCHEDULE_HOURªí¥Ü(±ß¤W12ÂI¡A¤]§Y0ÂI)¡C¦P®É¬°¨¾¤î24¤p®É°õ¦æ¤U¨Ó¡A¥ô°ÈÁÙ¥¼°õ¦æ§¹¡]·íµM¡A¤@¯ë¥ô°È¬O¨S¦³³o»òªøªº¡^¡AÁ×§K²Ä¤G¦¸¤S³Q½Õ«×¥H¤Þ°_°õ¦æ½Ä¬ð¡A³]¸m¤F·í«e¬O§_¥¿¦b°õ¦æªºª¬ºA¼Ð»xisRunning¡C¥Ü¨Ò¥N½X¦p¤U©Ò¥Ü¡G

  1.     private static final int C_SCHEDULE_HOUR   = 0;
  2.     private static boolean isRunning = false;
  3.          private ServletContext context = null;
  4.     public MyTask(ServletContext context) {
  5.         this.context = context;
  6.     }
  7.     public void run() {
  8.         Calendar cal = Calendar.getInstance();        
  9.         if (!isRunning)  {           
  10.             if (C_SCHEDULE_HOUR == cal.get(Calendar.HOUR_OF_DAY)) {            
  11.                     isRunning = true;                
  12.                 context.log("¶}©l°õ¦æ«ü©w¥ô°È");
  13.                 
  14.                 //TODO ²K¥[¦Û©w¸qªº¸Ô²Ó¥ô°È¡A¥H¤U¥u¬O¥Ü¨Ò
  15.                 int i = 0;
  16.                 while (i++ < 10) {
  17.                     context.log("¤w§¹¦¨¥ô°Èªº" + i + "/" + 10);
  18.                 }
  19.                 isRunning = false;
  20.                 context.log("«ü©w¥ô°È°õ¦æµ²§ô");               
  21.             }            
  22.         } else {
  23.             context.log("¤W¤@¦¸¥ô°È°õ¦æÁÙ¥¼µ²§ô");
  24.         }
  25.     }


    ¤W­±¥N½X¤¤¡§//TODO¡K¡K¡¨¤§¤U¥|¦æ¬O¯u¥¿³Q½Õ«×°õ¦æªººt¥Ü¥N½X(¦b§Úªº°]¬F¼Æ¾Ú¤¤¤ß¶µ¥Ø¤¤´N¬O³øªí­pºâ¹Lµ{)¡A±z¥i¥H´«¦¨¦Û¤v§Æ±æ°õ¦æªº»y¥y¡C
¨ì³o¨à¡AServletContextListener©MMyTaskªº¥N½X³£¤w§¹¾ã¤F¡C³Ì«á¤@¨B´N¬O§âServletContextListener³¡¸p¨ì±zªºWeb¤uµ{¤¤¥h¡A¦b±z¤uµ{ªºweb.xml°t¸m¤å¥ó¤¤¥[¤J¦p¤U¤T¦æ¡G
    
        com.test.ContextListener
    
 
    ·íµM¡A¤W­±ªºcom.test±o´«¦¨±z¦Û¤vªº¥]¦W¤F¡C«O¦sweb.xml¤å¥ó«á¡A§â¤uµ{¥´¥]³¡¸p¨ìTomcat¤¤§Y¥i¡C¥ô°È·|¦b¨C±ß12ÂI¦ÜÕæ±á1ÂI¤§¶¡³Q°õ¦æ¡A¤W­±ªº¥N½X·|¦bTomcatªº¤é»x¤å¥ó¤¤°O¿ý¦p¤U¡G
2003-12-05 0¡G21¡G39 ¶}©l°õ¦æ«ü©w¥ô°È
2003-12-05 0¡G21¡G39 ¤w§¹¦¨¥ô°Èªº1/10
    ¡K¡K
2003-12-05 0¡G21¡G39 ¤w§¹¦¨¥ô°Èªº10/10
2003-12-05 0¡G21¡G39 «ü©w¥ô°È°õ¦æµ²§ô


[ µoªíµû½× ] ¦rÅé[ ¤j¡B¤¤¡B¤p ] [ ¦C¦L ] [ ¶i¤J³Õ«È ] [ ¶i¤J½×¾Â ]  [ ±ÀÂ˵¹ªB¤Í ]
  ¡i¬ÛÃö¤å³¹¡j
¡P µo¶l¥ó®É²×©ó¥i¥H³q¹LsinaªºsmtpÅçÃÒ (07-06) ¡P ²Ä¤T¤èÃþ®w:¨Ï¥Î°ª®Ä¤é»x¤u¨ã¡XLog4J (07-06)
¡P JAVA°ò¦¡G«_ªw±Æ§ÇºtºâªkªºJAVA¹ê²{ (07-06) ¡P ½s¼g¥i½u¤W¦¬µoE-mailªºJava Applet (07-05)
¡P java-VectorÃþ¦bJava½sµ{¤¤ªºÀ³¥Î (07-05) ¡P Hibernate­±Á{±M§Q¶D³^¡A©Î¾D¹J¸T¤î¥O¡I (07-05)
¡P J2EEºî¦X¡GJ2EE¬ÛÃö³]­p¼Ò¦¡°Q½× (07-04) ¡P Java Socketºô¸ô½sµ{ªì¯Å¤Jªù (07-04)
¡P J2EEºî¦X¡GLog4j°ò¥»¨Ï¥Î¤èªk (07-04) ¡P ¸ò§Ú¾ÇJava¤§Java GUIªºµo®i»Pºt¤Æ (07-04)
  ¡i«È¤á»Ý¨D¤ÏõXªí¡j
* ©m¡@¡@¦W:
§ó¦h¸ê®Æ¡@ ¤F¸Ñ¤è®×¡@ »{ÃѼt°Ó
* ³æ¦ì¦WºÙ:
* Ápô¹q¸Ü:
* ¹q¤l¶l¥ó:
  ÁÉ­}±ÀÂË  
  ¤â¾÷¡P¸ê¶O ¡P·s«~¡P¾ÉÁÊ¡Pµû´ú¡P¤â¾÷¸ê¶O¡P¼e±a
¤â¾÷·j¯Á  ¿Õ°ò¨È N73 MOTO Z6
  IT²£«~ ¡Pµ§°O¥»¡P»O¦¡¾÷¡P¦øªA¾¹¡P¦C¦L¡P§ë¼v
IT²£«~·j¯Á 
  IT§Þ³N ¡P¶}µo¡PºôºÞ¡P¦w¥þ¡P¼Æ¾Ú®w¡P§@·~¨t²Î
  ¸ê°T¤Æ ¡P¼öÂI¡P±MÃD¡P³X½Í¡P¶g¥Z¡P¤è®×®×¨Ò
¡P ¥_¨Ê·s³W¤£¯àÅQ¤ýµw¤W¤} ºô©±µP·Ó½w´Á°õ¦æ
¡P ³nÅé¥~¥]¤§Åܪº·s»O¶¥: ´£°ª¥þ²y¥æ¥I¯à¤O
¡P ERP®×¨Ò¤ÀªR SaaS±a¨Ó½ÄÀ» ITªA°È°Ó­±Á{¬D¾Ô
¡P ³q¤è´Á³fCRM¸Ñ¨M¤è®× ©Ð¦a²£¦æ·~CRM¸Ñ¨M¤è®×
  IT³Õ«È ¡P´¿¼C¬î¡P¶µ¥ß­è¡PJava¾Ç²ß¡PºôºÞ
  IT§Þ³N½×¾Â ¡P¶}µo¡PºôºÞ¡P¦w¥þ¡P¼Æ¾Ú®w¡P¨t²Î