|
|
Óû§Ãû£º·ëÇ¿ ±ÊÃû£ºPaul µØÇø£º µØÇò-Öйú ÐÐÒµ£ºÆäËû |
| ÈÕ | Ò» | ¶þ | Èý | ËÄ | Îå | Áù |
ÐÂBlog:×ÔÓÉÈË/Libero-->http://blog.sina.com.cn/m/fengqiang
ÎÒµÄÐÂBlog£¨×ÔÓÉÈË/Libero£©µØÖ·
¡¡£¨×÷ÕßÖö¥£©
×î½üBokeeµÄ¿Õ¼äÒì³£²»Îȶ¨£¬ÎÒÒѾÊܹ»ÁË£¬ÇëÅóÓÑÃÇͨ¹ýÏÂÃæµÄÁ´½Ó·ÃÎÊÎÒÐÂÀ˵ÄBlog¿Õ¼ä¡°×ÔÓɶȡ±¡£µØÖ·£º
http://blog.sina.com.cn/m/fengqiang
»ò
http://blog.sina.com.cn/u/1191637422 £¨ÓÀ¾ÃÓòÃû£©
ÒÔºóÖ»ÓÐÖØÒªµÄÎÄÕ»áÔÚÄǶù·¢±í£¬±¾Õ¾²»ÔÙ¸üУ¡
Farewell Blogchina/Bokee!
- ×÷Õߣº Paul 2005Äê09ÔÂ12ÈÕ, ÐÇÆÚÒ» 18:49¡¡ »Ø¸´£¨0£© |¡¡ ÒýÓã¨0£© ¼ÓÈ벩²É
ÓúÃRegsvr32½â¾öϵͳÒÉÄÑÔÓÖ¢
- ×÷Õߣº Paul 2005Äê09ÔÂ12ÈÕ, ÐÇÆÚÒ» 14:22¡¡ »Ø¸´£¨3£© |¡¡ ÒýÓã¨0£© ¼ÓÈ벩²É
΢ÈíWindows VistaÆß¸ö°æ±¾Ìáǰ½ÒÃØ[תÌù]
- ×÷Õߣº Paul 2005Äê09ÔÂ12ÈÕ, ÐÇÆÚÒ» 09:19¡¡ »Ø¸´£¨0£© |¡¡ ÒýÓã¨0£© ¼ÓÈ벩²É
¼Òµç³£¼ûÈÏÖ¤±êÖ¾Ò»ÀÀ
- ×÷Õߣº Paul 2005Äê09ÔÂ8ÈÕ, ÐÇÆÚËÄ 11:13¡¡ »Ø¸´£¨0£© |¡¡ ÒýÓã¨0£© ¼ÓÈ벩²É
µ±ÎÒÃÇ¿ÉÒԻشðÏÂÃæµÄÎÊÌâʱ£¬¾Í¿ÉÒÔ¿ªÊ¼´´ÒµÁË
- ×÷Õߣº Paul 2005Äê09ÔÂ7ÈÕ, ÐÇÆÚÈý 13:04¡¡ »Ø¸´£¨0£© |¡¡ ÒýÓã¨0£© ¼ÓÈ벩²É
³£ÓÃblog½Å±¾Èí¼þ±È½Ï Blog Software Breakdown
- ×÷Õߣº Paul 2005Äê09ÔÂ5ÈÕ, ÐÇÆÚÒ» 17:18¡¡ »Ø¸´£¨0£© |¡¡ ÒýÓã¨0£© ¼ÓÈ벩²É
Íâ°ü£ºITOºÍBPO
- ×÷Õߣº Paul 2005Äê09ÔÂ4ÈÕ, ÐÇÆÚÈÕ 23:01¡¡ »Ø¸´£¨0£© |¡¡ ÒýÓã¨0£© ¼ÓÈ벩²É
ÉϺ£ÎĹãȱϯBIRTV ÆóÒµºôÓõÓªÔìÁ¼ÐÔ²úÒµ»·¾³
- ×÷Õߣº Paul 2005Äê09ÔÂ3ÈÕ, ÐÇÆÚÁù 14:04¡¡ »Ø¸´£¨0£© |¡¡ ÒýÓã¨0£© ¼ÓÈ벩²É
28%Óû§¶ÔIPTVÎÞÈÏÖª ÐèÓëÄ£ÄâµçÊÓ¾ºÕùÈýÎåÄê
- ×÷Õߣº Paul 2005Äê09ÔÂ3ÈÕ, ÐÇÆÚÁù 13:46¡¡ »Ø¸´£¨0£© |¡¡ ÒýÓã¨0£© ¼ÓÈ벩²É
µçÓ¯¹ºÍøÍ¨¿í´ø50%¹ÉȨ ÌïËÝÄþ¿ÉÄÜÁìµ¼ºÏ×ʹ«Ë¾
- ×÷Õߣº Paul 2005Äê09ÔÂ3ÈÕ, ÐÇÆÚÁù 13:24¡¡ »Ø¸´£¨0£© |¡¡ ÒýÓã¨0£© ¼ÓÈ벩²É
»¥ÁªÍøÓÀÔ¶²»È±ÉÙ»ú»á
ÏÈ¿´ÏÂÃæµÄÏûÏ¢£º
¡¾×ʱ¾Êг¡¡¿Ã¨ÆËÍøÐû²¼Ã÷ÄêµÇ½ÄÉÊÐ
ǧÏ𻥶¯¼¯ÍÅÆìÏÂÖªÃûÉçÇøÍøÕ¾Ã¨ÆËÈÕǰÕýʽÐû²¼¼Æ»®ÔÚÃ÷ÄêµÇ½ÄÉÊС£¶ø×÷ΪµÇ½ÄÉÊеÄ×¼±¸£¬Ä¿Ç°Ã¨ÆËÒѾ»ñµÃ1000ÍòÃÀÔªÕ½ÂÔͶ×Ê£¬²¢ÇÒ²¢¹ºÁË´ÓÊ¡°Éç»áÍøÂ硱½»ÓÑ·þÎñµÄUUMEÍøÕ¾¡£
ǧÏ𻥶¯¼¯ÍŶʳ¤¼æCEO³ÂÒ»ÖÛ±íʾ£¬ÉÏÔÂÖÐÑ®£¬ÊÀ½çÎå´ó·çÏÕͶ×Ê»ú¹¹Ö®Ò»µÄAccelPartnersÏòǧÏð×¢×Ê1000ÍòÃÀÔª£¬ÆäÖÐUUMEÒ²ÊÇAccelPartnersµÄͶ×ÊÏîĿ֮һ¡£Ä¿Ç°Ã¨ÆËºÍUUMEºÏ²¢µÄ·¨ÂÉÊÖÐøÒѾ½Ó½üÍê³É£¬Á½¼ÒÆóÒµÔ ÓеÄÓòÃûÈÔ½«±£³Ö¶ÀÁ¢£¬Ö»ÊÇ»áÔÚÄÚÈݺ;ӪÀíÄîÉϽøÐÐÈںϡ£
ͬʱ£¬³ÂÒ»ÖÛÒ²±íʾ£¬¡°½ñºó£¬Ã¨ÆËÍø²»»áÔÙÂôÈκζ«Î÷£¬Ö»»áÂò½øÍøÕ¾¡£¡±²¢³Æ£¬Ï£ÍûÔÚÃ÷ÄêÍê³ÉµÇ½ÄÉ˹´ï¿ËµÄÉÏÊмƻ®¡£
Èç¹û˵°Ù¶È×öÇ¿×ö´óÊÇÒòΪÓÐ×ÔÖ÷¼¼ÊõµÄ»°£¬Ã¨ÆËµÄ³É³¤Í¾¾¶ÎÞÒÉ˵Ã÷ÁËÄÚÈݵÄÖØÒªÐÔ£¬»òÕß˵£¬Ö»ÓÐÓÐÈËÆø£¬¾ÍÓлú»á¡£×î½ü³´µÃºÜÈȵġ°³¬¼¶Å®Éù¡±¾Í˵Ã÷ÁËÎÊÌâ¡£
ÎÒÃÇÏÖÔÚ×öIPTV£¬Ëµµ½µ×£¬²¢²»ÊÇ×öIPTVÕâ¸öºÐ×Ó£¬×îÖÕ»¹ÊÇ¿´IPTVÄܳÐÔØÊ²Ã´ÄÚÈÝ¡£»¥ÁªÍøÓÀÔ¶²»È±ÉÙ»ú»á£¬È±ÉÙ´´Ôì»ú»áµÄidea¡£
- ×÷Õߣº Paul 2005Äê08ÔÂ22ÈÕ, ÐÇÆÚÒ» 23:48¡¡ »Ø¸´£¨1£© |¡¡ ÒýÓã¨0£© ¼ÓÈ벩²É
½ñÌìÊÔÓÃÁËÒÆ¶¯GPRSÉÏÍø£¬Ì«ÈõÁË
ÓõÄÊDz¿ÃÅÉêÇëµÄGPRSÎÞÏßÍø¿¨£¬ÅäµÄ¹âÅÌÓÐD-LinkµÄÔ°æÇý¶¯ºÍÒÆ¶¯µÄËæeÐУ¬µ«×ÜÌå¸Ð¾õ²»ºÃ£º
1.ÖØÆôºó³£³£ÕÒ²»µ½Íø¿¨£¬¶øÇÒÈÝÒ×À¶ÆÁËÀ»ú£»
2.ÉÏÍøËٶȲ¢²»¿ì£¬ÉõÖÁµÍÓÚ56KµÄÓÐÏß裻
3.¸½´øµÄ¶ÌÐÅÈí¼þÓò»ÁË£¬¼ì²â²»µ½COM4µÄÉÏÍø¿¨¡£
ÅóÓѸøÎÒÍÆ¼ö£¬Ä¿Ç°ÎÞÏßÉÏÍø×îºÃµÄÊÇÁªÍ¨µÄCDMA£¬ÎÒûÊÔÓùý¡£µ«ÊÔÁËÒÆ¶¯µÄGPRS£¬¾õµÃÌ«ÈõÁË£¬¶øÇÒ²»Îȶ¨£¬¿ÉÄÜCDMAÒªºÃһЩ¡£ÕæÕýÒâÒåµÄÎÞÏßÉÏÍø£¬¿´À´ÒªµÈ3GÁË¡£
- ×÷Õߣº Paul 2005Äê08ÔÂ20ÈÕ, ÐÇÆÚÁù 22:24¡¡ »Ø¸´£¨1£© |¡¡ ÒýÓã¨0£© ¼ÓÈ벩²É
Java¼¼Êõ±¾¼Í
JavaÐéÄâ»úµÄ 10 Äê
ÎÄ/²ÜÏþ¸Õ
JavaÐéÄâ»úµÄÆðÔ´Óë¹¹Ôì
µ±ÎÒÃÇ˵µ½¡°Java¡±Õâ¸ö´ÊµÄʱºò£¬Ö¸µÄÊÇËĸöÏ໥¹ØÁªµÄ¸ÅÄJavaÓïÑÔ¡¢Java API¡¢Java ClassÎļþ¸ñʽ¡¢JavaÐéÄâ»ú¡£Õû¸öJavaÌåϵÊÇ»ùÓÚJava ÐéÄâ»ú¹¹ÔìµÄ£¬ÕýÒòΪÈç´Ë£¬²ÅÄÜʵÏÖJavaµÄ°²È«ÐÔºÍÍøÂçÒÆ¶¯ÐÔ¡£Java²¢·ÇÊǵÚÒ»¸ö²ÉÓá°ÐéÄâ»ú¡±¸ÅÄîµÄÌåϵ£¬µ«È´ÊǵÚÒ»¸öµÃµ½¹ã·ºÔËÓõÄÐéÄâ»úƽ̨¡£ ¡°ÐéÄ⡱£¬ÊÇÒ»ÖÖ¸ôÀëÎïÀí×ÊÔ´ÓëÂß¼×ÊÔ´µÄÊֶΡ£JavaÐéÄâ»úµÄ¡°ÐéÄ⡱£¬ÔòÊÇÓÃÀ´¸ôÀëÎïÀí»úÆ÷¡¢µ×²ã²Ù×÷ϵͳÓëJavaÓïÑԹ淶ʵÏÖµÄÊֶΡ£
ËäÈ»JavaÊÇÒ»ÖÖÃæÏò¶ÔÏóµÄÓïÑÔ£¬ÎÒÃÇÆ½Ê±´óÁ¿Ê¹Óõģ¬ÊǶÔÏó¼äµÄ¶à̬¡¢×éºÏ(Composition)¡¢Î¯ÅÉ£¨Delegation£©,µ«µ±ÎÒÃÇÌÖÂÛÐéÄâ»úµÄʱºò£¬ÎÒÃÇ¿´¼ûµÄ»ù±¾¸ÅÄîÈ´ÊÇ¡°Õ»(Stack)¡±ºÍ¡°¶Ñ(Heap)¡±¡£¸ù¾Ý·ëŵÒÀÂüµÄ¡°´æ´¢¼ÆË㡱ģÐÍ£¬ËùÓеĴúÂë¶¼±£´æÔÚ´úÂë¿Õ¼äÖУ¬Ëæ×ųÌÐò¼ÆÊýÆ÷Ö¸ÕëµÄ±ä»¯½øÐгÌÐòµÄÖ´ÐС¢Ìø×ª¡£JavaÐéÄâ»úÖÐûÓмĴæÆ÷µÄ¸ÅÄ·½·¨µ÷ÓÃÊDzÉÓá°Õ»¡±½øÐеģ¬ÕâÊÇÒ»ÖÖ°²È«¡¢¼ò½àµÄ·½·¨¡£
JavaÐéÄâ»úͨ¹ýÀà×°ÔØÆ÷Ö§³Ö¶ÔÀàµÄ¸ôÀ룬ÕâÒ²ÊÇJavaʵÏÖ°²È«ÐԵĻù´¡¡£Ã¿¸öÀà¶¼¾ßÓÐ×Ô¼ºµÄÃüÃû¿Õ¼ä£¬ÔÚ¾ßÓв»Í¬°²È«¼¶±ðµÄɳÏäÖÐÔËÐУ¬Òò´Ë²»»á²úÉúµÍ°²È«¼¶±ðµÄ´úÂëÀ´Ô½È¨·ÃÎʸ߼¶±ð´úÂëµÄ»ú»á¡£Àà×°ÔØÆ÷µÄ³öÏÖÊÇJavaÐéÄâ»úÓë´ó²¿·ÖÓÃCʵÏÖµÄÐéÄâ»úµÄÏÔÖø²»Í¬Ö®´¦¡£
JavaÐéÄâ»úµÄÁíÍâÒ»¸öÏÔÖøÌØµã¾ÍÊÇʵÏÖÁË×Ô¶¯µÄÀ¬»øÊÕ¼¯¡£ÔÚÍù³££¬Ð´³ÌÐòµÄʱºòÒªÀμǶÔÏóÖ®¼äµÄ¹ØÁª£¬ÔÚÿ¸ö³ÌÐò¿éÖмÙÈôÉêÇëÁ˶ÔÏó¿Õ¼ä£¬¾Í±ØÐëÔÚ³ö¿ÚÊͷŵô£¬·½·¨µ÷ÓÃÍùÍùͬʱҲ¾ÍÊǶÔÏóµÄ±ß½ç¡£¶ø×Ô¶¯À¬»øÊÕ¼¯´ø¸ø¿ª·¢ÕßµÄ×î´óºÃ´¦£¬¾ÍÊÇ¿ÉÒԷdz£·½±ãµØ´ÓÕûÌåÉϰÑϵͳµÄ¶ÔÏó×éÖ¯³ÉÒ»ÕŶÔÏóͼ£¬Ö»ÐèÍùÕâÕÅͼÖÐÌí¼Ó¶ÔÏó£¬Î¬»¤¶ÔÏóÖ®¼äµÄ¹ØÁª£¬È´²»ÐèÒª×Ô¼º×ö¸´ÔÓµÄÇåɨ¹¤×÷¡£ÕýÊÇÓÐÁËÕâÖÖ˼άµ¥´¿µÄ¶ÔÏóͼµÄÖ§³Ö£¬OR Mapping(¹ØÏµÊý¾Ý¿âÓë¶ÔÏóÓ³É䣩¼¼ÊõÔÚ×î½üµÃÒÔ´óÐÐÆäµÀ£¬Éè¼ÆÄ£Ê½Ò²¸üÈÝÒ×±»JavaȺÌåËù½ÓÊÜ¡£
ÐéÄâ»úµÄÓÅ»¯
1995ÄêµÚÒ»´úµÄJava³ǫ֮̈ʱ£¬ÆäÐéÄâ»úÖ´ÐÐÊÇÒÀ¿¿¡°×Ö½ÚÂë½âÊÍÆ÷£¨Byte Code Interceptor£©¡±µÄ£¬Ò²¾ÍÊÇ˵ÿÌõÖ¸Áî¶¼ÓÉÐéÄâ»úÀ´µ±³¡½âÊÍÖ´ÐУ¬ÕâÔì³ÉËÙ¶ÈÁîÈË×¥¿ñµØ»ºÂý¡£¸üÓÐÉõÕßÓÐÈË¿ªÊ¼×ܽáÐí¶àµÄ¡°ËÙ¶ÈÓÅ»¯¾Ñ顱£¬±ÈÈç˵£º¡°¾¡Á¿°ÑËùÓеĴúÂë¶¼·ÅÔڽϴóµÄ·½·¨ÖÐÖ´ÐС±Óë¡°ÉÙÓýӿڡ±µÈµÈ£¬ÕâÍêÈ«ÓëJavaÓïÑÔµÄÉè¼ÆÄ¿µÄ±³µÀ¶ø³Û£¬ÏÖÔÚ¿´ÆðÀ´ÊǶàô¿ÉЦµÄÆæÌ¸¹ÖÂÛ£¬µ±Ê±È´ÊǺܶà³ÌÐòÔ±½ò½òÀÖµÀµÄ¾Ñé̸֮¡£ÎÞËû£¬Java±¾ÉíÖ´ÐÐÌ«ÂýÁË¡£JavaÉúÃüµÄǰʮ·ÖÖ®Èý¾ÍÊÇÈç´Ë»ºÂýµØ¶É¹ýµÄ¡£
ÓÚÊÇ£¬SunµÄ¹¤³Ìʦ¿ªÊ¼Æ´ÃüÏë×ÅÌá¸ßÖ´ÐÐËÙ¶È¡£JIT¾²Ì¬±àÒëÆ÷µÄ³öÏÖÊÇÔÚ1996Äêʮԣ¬Sun·Å³öÁ˵ÚÒ»¸ö±àÒëÆ÷¡£JIT±àÒëÆ÷ÔÚÿ¶Î´úÂëÖ´ÐÐǰ½øÐбàÒ룬±àÒëµÄ½á¹ûΪ±¾µØ¾²Ì¬»úÆ÷Â룬ִÐÐËÙ¶ÈÓÐÁËÖʵÄÌá¸ß¡£Symantec¹«Ë¾µ±Ê±Æ¾½èÆä°ÁÈ˵ÄJIT±àÒëÆ÷£¬ÔÚÕû¸öJava½çÊܵ½ÈÈÁÒµÄ×·Åõ¡£ÔÚÆäºóµÄ1998Ä꣬Java 1.2·¢²¼µÄʱºò£¬¸½´øÁËJIT±àÒëÆ÷£¬´Ó´ËJavaµÄʹÓÃÕßÖÕÓÚ¿ÉÒÔÅ׿ªÉÏÃæËµµÄÄÇÐ©Ææ¹ÖµÄ¡°ËÙ¶ÈÓÅ»¯¾Ñ顱ÁË¡£
JIT¾²Ì¬±àÒëÆ÷ËäÈ»¿ÉÒÔ½â¾öһЩÎÊÌ⣬µ«ÊÇÐÔÄÜÈÔÈ»ºÍC/C++ÓкܴóµÄ²î¾à¡£¶ÔÒ»¶Î³ÌÐò¶øÑÔ£¬Ò»ÃûÓÅÐãµÄ³ÌÐòÔ±ÊÇÈçºÎÀ´¸Ä½øÔËÐÐËٶȵÄÄØ£¿Ê×ÏÈ£¬Ëû²»»áɵµ½°ÑËùÓеĴúÂë¶¼À´ÓÅ»¯£¬Ëû»á¹Û²ì¡¢Ë¼¿¼µ½µ×ÄĶδúÂë¶ÔÕûÌåÐÔÄÜÓ°Ïì×î´ó£¿È»ºó¼¯Öо«Á¦À´ÓÅ»¯ÕâÒ»¶Î´úÂë¡£°´ÕÕ¾Ñ飬Õû¸ö³ÌÐò 10%-20%µÄ´úÂ룬»áÕ¼¾Ý 80%-90%µÄÔËÐÐʱ¼ä¡£ÓÃÕâÖÖ·½·¨£¬ÔÚͬÑùµÄʱ¼ä¡¢¸¶³öͬÑù³Ì¶ÈµÄŬÁ¦ºó£¬ÕâÃûÓÅÐãµÄ³ÌÐòԱʹÕû¸ö³ÌÐòµÄÐÔÄܵõ½Á˺ܴó³Ì¶ÈµÄÓÅ»¯¡£HotSpotÒýÇæ£¬¾ÍÊÇÄ£·ÂÈ˹¤µÄÕâÖÖ·½·¨½øÐÐÓÅ»¯µÄ¡£ÔÚ³ÌÐòÔËÐеĿªÊ¼£¬Java´úÂëÈÔÈ»½âÊÍÖ´ÐУ¬µ«HotSpotÒýÇæ¿ªÊ¼½øÐвÉÑù(Profiling)¡£¸ù¾Ý²ÉÑùµÄ½á¹û£¬¾ö¶¨Ä³¶Î³ÌÐòÊÇÕ¼Óý϶àÔËÐÐʱ¼äµÄ£¬¾ÍÈÏΪËüÊÇ¡°HotSpot¡±£¬ËüÒ²¾ÍÊÇĿǰ³ÌÐòµÄÆ¿¾±£¬ ÒýÇæ¿ªÊ¼Æô¶¯Ò»¸öµ¥¶ÀµÄÏ߳̽øÐÐÓÅ»¯¡£ÒòΪ²»ÏóÔʼµÄ JIT±àÒëÆ÷ÄÇÑùÎÞ²î±ðµÄ±àÒëËùÓдúÂ룬HotSpotÒýÇæ¿ÉÒÔ¼¯Öо«Á¦À´¶ÔHotSpot´úÂë½øÐÐÉî¶ÈÓÅ»¯£¬ÕâÑùÕⲿ·Ö´úÂëÖ´ÐÐÆðÀ´¸ü¼ÓѸ½Ý¡£Ö®Ç°µÄ¾²Ì¬±àÒëÆ÷Ö»Äܰ´ÕÕÔ¤¶¨µÄ²ßÂÔ½øÐбàÒëÓÅ»¯£¬¶øHotSpotÒýÇæµÄÓÅ»¯ÊÇ»ùÓÚ²ÉÑùµÄ½á¹ûµÄ£¬Òò´ËÕâÖÖ·½·¨¶ÔËùÓеÄÓ¦ÓóÌÐò¶¼ÓÐЧ¡£1999Äê3ÔÂ27ÈÕ£¬Sun·Å³öÁ˵ÚÒ»¸öHotSpotÒýÇæ¡£ÔÚËæºóµÄ2000Äê5ÔµÄJDK 1.3ÖУ¬°üº¬ÁËHotSoptÒýÇæ£¬ÕâҲʹ1.3³ÉÁËÒ»¸ö¾ßÓÐÀï³Ì±®ÒâÒåµÄ·¢Ðа汾¡£µ½ÕâÀJavaµÄÊ®ÄêÉúÃü£¬ÒѾ¹ýÈ¥ÁËÒ»°ë¡£
HotSpot´ú±íµÄÊÇÒ»ÖÖ¶¯Ì¬±àÒëµÄ¼¼Êõ¡£¶ÔJavaÕâÖÖ´óÁ¿Ê¹ÓÃίÅÉ¡¢×éºÏµÈÃæÏò¶ÔÏóÌØÐԵijÌÐòÀ´Ëµ£¬¶¯Ì¬±àÒë±ÈÆð¾²Ì¬±àÒëÀ´ÓÐÏÔÖøµÄÓÅÊÆ¡£±ÈÈçMethod Inlining¡£·½·¨µÄµ÷ÓÃÊÇÒ»¸öºÜºÄʱµÄ²Ù×÷£¬¼ÙÈô¿ÉÒÔ°Ñ·½·¨µ÷ÓÃÖ±½ÓÄÚǶµ½µ÷ÓÃÕߵĴúÂëÖУ¬¾Í¿ÉÒÔ½ÚÊ¡´óÁ¿µÄʱ¼ä£¬ Õâ±»³ÆÎª¡°Method Inlining¡±¡£ÒòÎªÉæ¼°µ½ÀàµÄÖØÔØ£¬¾²Ì¬ÓÅ»¯ºÜÄÑÈ·ÇÐÖªµÀÄÄЩÊôÐÔ¡¢·½·¨±»ÖØÔØ£¬Òò´ËºÜÄѶÔmethod½øÐкϲ¢£¬Ö»ºÃÔÚ·½·¨ÄÚ²¿½øÐо²Ì¬±àÒ룬¼ÙÈôÿ¸ö·½·¨¶¼ºÜС£¬¾²Ì¬ÓÅ»¯ÄÜÆðµ½µÄ×÷ÓÃÒ²¾Í±È½ÏС¡£¶ø¶¯Ì¬±àÒëÒòΪ¿ÉÒÔÍêÈ«ËæÊ±ÕÆÎÕÀàµÄÖØÔØÇé¿ö£¬¾Í¿ÉÒÔ°ÑÏà¹ØµÄ·½·¨ºÏ²¢½øÐÐÉî¶ÈÓÅ»¯¡£ÏÖ´úµÄJava³ÌÐò£¬ÌرðÊÇÔÚÉè¼ÆÄ£Ê½½ÌÓýµÃµ½ÆÕ¼°Ö®ºó£¬´óÁ¿Ê¹ÓÃÀàµÄ¼Ì³Ð¡¢Î¯ÅÉ£¬ÐγÉÁ˺ܶà¶ÌСµÄ·½·¨£¬¶¯Ì¬±àÒëµÄÓÅÊÆ¾Í¸ü¼ÓÃ÷ÏÔ¡£
×Ô´Ó³öÏÖÁËHotSpotÖ®ºó£¬Õû¸öJava½çΪ֮һÕñ¡£
×î½üµÄÎåÄ꣬¾ÍÊǼÌÐøÓÅ»¯µÄÎåÄê¡£¼ÌÐø½øÐÐÓÅ»¯µÄ·½·¨Óм¸Ìõ·£¬Ò»ÊÇÑо¿ÐµIJÉÑùËã·¨¡£ÒòΪ²ÉÑù¹ØÏµµ½²»Í¬µÄÓÅ»¯²ßÂÔ£¬»á¶ÔÕûÌåÐÔÄÜÓбȽϴóµÄÓ°Ïì¡£¶þÊÇÑо¿Éî¶ÈÓÅ»¯µÄ·½·¨¡£ÈýÊÇÑо¿À¬»øÊÕ¼¯µÄËã·¨¡£À¬»øÊÕ¼¯»á´øÀ´³ÌÐò¶ÌÔݵÄÍ£¶Ù£¬Õâ»á´øÀ´¸ºÃæµÄÓû§ÌåÑé¡£ÓÚÊÇ£¬ÈçºÎÌá¸ßÀ¬»øÊÕ¼¯µÄЧÂÊ£¬¼õÉÙÑÓ³Ù£¬³öÏÖÁËÎ廨°ËÃŵÄËã·¨£¬±ÈÈç½¥½øÊ½ÊÕ¼¯¡¢»ð³µËã·¨µÈ¡£ÔÚ¶à´¦ÀíÆ÷µÄʱºò£¬ÈçºÎÀûÓöദÀíÆ÷½øÐв¢ÐÐÊÕ¼¯Ò²ÊÇÑо¿µÄÒ»¸öÈȵ㡣Õâ·½Ãæ£¬BEAµÄJRocket×ßÔÚÁËÇ°Ãæ¡£
ÏÖʵÉú»îÖеÄÐéÄâ»ú
×îºó£¬ÈÃÎÒÃÇÀ´Å̵ãÒ»ÏÂĿǰÊÐÃæÉϿɼûµÄ¸÷¸öÐéÄâ»ú¡£
Ê×ÏÈÒªÌáµ½µÄ£¬ºÁÎÞÒÉÎÊÊÇSunµÄÐéÄâ»ú¡£×÷Ϊ´óÖÚÐÄÄ¿Öеġ°¹Ù·½ÊµÏÖ¡±£¬SunÓµÓÐ×î´óµÄÓû§Èº£¬²¢ÇÒÓµÓС°¼æÈÝ»ù×¼¡±µÄµØÎ»£¬ÆäËûÐéÄâ»ú¶¼±ØÐëÒª¿¼ÂǺÍSunÐéÄâ»úµÄ¼æÈÝÐÔÎÊÌâ¡£±ÈÈç JRocket¾Í»áÔÚÄ³Ð©ÌØÊâÇé¿öϱíÏÖ³öºÍSun²»Í¬µÄÌØÐÔ£¬¿ÉÄܶԳÌÐòÔËÐÐÓÐÓ°Ïì¡£²»¹ýSunÒ²µÄȷûÓÐÈùã´óÓû§Ê§Íû£¬ËäÈ»ÔÚÔçÆÚÐÔÄܱȲ»ÉÏSymantec,ºóÀ´ÔÚ1.2 µÄʱºòÐÔÄÜÓÖ±»IBM³¬Ô½£¬µ«SunÒ»Ö±ÔÚŬÁ¦¸ïУ¬ÌرðÊÇ 1.4.2Ö®ºó£¬ÐÔÄÜÓÐÁ˳¤×ãµÄ½ø²½¡£ËäÈ»JDK 1.5µÄÐéÄâ»úÔÚÐÔÄÜÉÏûÓÐʲôÌá¸ß£¬µ«ÊÇÔöÇ¿ÁËÎȶ¨ÐÔ£¬¾Ý˵ÐÞ¸ÄÁË8000´¦bug£¬ÕæÊÇÈÃÈ˺¹Á÷²»Ö¹¡£ÔÀ´ÎÒÃÇÔÚ1.4.2ÏÂÃæÒ»Ö±ÔÚÏíÊÜÕâô¶àbug°¡¡£
Æä´ÎÊÇÀÏÅÆ¾¢ÂÃIBM¡£IBMµÄJDKÔÚ1.3µÄʱ´ú´´ÏÂÁË×îºÃµÄÐÔÄܼǼ£¬´Ó´ËÊ÷Á¢Á˸߶ËÐÎÏó¡£ÌرðÊÇÔÚÆäWebSphere²úÆ·Öеõ½ÁËºÜºÃµÄÆÀ¼Û¡£ÆäJDKÒ²ÊÇ×îÔçÖ§³Ö64bitµÄJDKÖ®Ò»¡£µ½ÁËÏÖÔÚ£¬IBM JDKÔڸ߶ËÈÔÈ»ÊǺÍBEA¿ÉÒÔһƴµÄ¡£
È»ºóÊǺóÆðÖ®Ð㣬BEAµÄJRocket¡£Ëµµ½BEAͻȻÔÚJVMÁìÓòÒ»Ò¹Ö®¼äÒì¾üÍ»Æð£¬¶àÉÙÈÃÈËÓÐЩîªÄ¿£¬²»¹ýËü²ÉÈ¡µÄÕ½ÂÔÌØ±ð¼òµ¥£º×Ô¼ºÃ»ÓУ¬Ë÷ÐÔ»¨Ç®ÂòÁËÔÚ´ËÁìÓòÉîÓÐÑо¿µÄJRocket£¬ÔÚÇ°Ãæ¼ÓÉÏBEAµÄ±êÖ¾¾Í¿ÉÒÔÁË¡£JRocketÃé×¼¸ß¶Ë·þÎñÆ÷Êг¡£¬ÔÚ¶à´¦ÀíÆ÷»·¾³ÏÂÓв»Ë׵ıíÏÖ¡£
³ý´ËÖ®Í⣬»¹Óм¸¸ö¿ª·ÅÔ´´úÂëµÄJVMÖµµÃÒ»Ìá¡£Ê×ÏȾÍÊÇ´óÃû¶¦¶¦µÄJikesRVM¡£ËµÆðÆä´óÃû£¬´ó¶àÊýÈ˶¼ÖªµÀJikes±àÒëÆ÷ÊÇ IBM¿ª·¢µÄ£¬Ð§ÂʱÈͬµÈµÄjavac±àÒëÆ÷¸ßµÃ¶à£¬ºÜ¶à¿ª·¢Õß¶¼Ê¹ÓÃJikes±àÒëÆ÷À´È¡´újavac¡£¶øJikesRVMÔòÊÇIBM¿ªÔ´³öÀ´µÄÒ»ÕûÌ×ÐéÄâ»ú¼¼Êõ£¬°üº¬ÁËJIT£¬GCµÄÍêÕûʵÏÖ£¬ÔÚÆäÍøÕ¾ÉÏÒ²ÓÐÖÚ¶àµÄÂÛÎÄ£¬ÊµÔÚÊÇÏëÒªÉîÈëÑо¿JVMÕߵľø¼Ñ×ÊÔ´(http://jikesrvm.sourceforge.net)¡£
KaffeÊÇÒ»¸öÀÏÅÆµÄJVM,²»¹ýÏÖÔÚÒѾºÜÉÙÌýµ½ÁË¡£×÷Õß׫д´ËÎÄʱ£¬www.kaffe.orgÍøÕ¾ÒѾûÓÐÏìÓ¦£¬Ò²²»ÖªµÀÏÖÔÚµÄÇé¿öÈçºÎÁË¡£
GNUÔòÓÐÁ½¸ö¼Æ»®£ºGCJºÍGNU classpath¡£GNU classpathÊÇÒ»¸öµ×²ãʵÏÖ£¬¶øGCJÊÇÖ§³ÖjavaµÄÔ¤±àÒëÆ÷¡£
½áÊøÓï
ʱ¹âÁ÷ת£¬ºäºäÁÒÁÒµÄJavaÐéÄâ»úÐÔÄÜÕùÂ۷·ð»¹ÔÚ¶ú±ß»ØÏ죬ÏÖÔÚеÄÕùÂÛÈ´ÒѾÊÇ¡°JavaµÄÐÔÄÜÊÇ·ñÒѾ³¬Ô½C/C++¡±¡£Joakim Dahlstedt ÊÇ JRockit µÄÖ÷Òª¼Ü¹¹Éè¼ÆÊ¦Ö®Ò»£¬Ëû¼á³ÖÈÏΪ£¬Java¾ø²»ÊÇÒ»ÖÖËÙ¶ÈÂý£¬Ð§Âʵ͵ÄÓïÑÔ£¬JVM ÊÇÒ»¸ö¹Ø¼üµÄ×é¼þ£¬È·±£ÁËϵͳµÄ²¿ÊðÓëÔËÐкͿª·¢Ò»Ñù¿ìËÙ¡¢ÇáËÉ¡£ÌرðÊÇÔÚĿǰ¿ª·¢Ç÷ÊÆÊDzÉÓôóÁ¿Ô¤ÖƵĿò¼Üʱ£¬¶¯Ì¬±àÒëÓпÉÄܱÈC/C++ÕâÑùµÄ¾²Ì¬ÓÅ»¯»ñµÃ¸üºÃµÄÐÔÄÜ¡£
J2EEÎåÄê: ´ÓÆðÔ´µ½Ä¿µÄ
ÎÄ/ÁõÌì±±
Æðµã
ÔÚ¡°J2EE¡±Õâ¸öËõÂÔÓï±»µÚÒ»´Î½éÉܸøÊÀÈ˵Äʱ¿Ì£¬Ò²ÐíûÓм¸¸öÈË¿ÉÒÔÔ¤ÁϳöËüÔÚÈÕºóµÄÆæÌØÀú³Ì¡£ÄÇÊÇÔÚ1999Äê6ÔµÄJavaOneÄê»áÉÏ£¬Ê±ÈÎSun¹«Ë¾JavaÆóÒµ¿ª·¢²¿ÃÅÖ÷¹ÜµÄMala ChandraÐ˷ܵØÔ¤¸æÁËJavaÊÀ½çµÄÕâλгÉÔ±¡£ÄÇЩ²»ÊìϤ±³¾°µÄÌýÖÚÃÇ£¬´§Ä¦×ÅËýÑÝ˵ÖгöÏÖµÄÒ»´®´®È«ÐÂÊõÓ±íÇé´ó¸ÅÓÖÊǾªÏ²¡¢ÓÖÊÇÃÔ»ó:Ò»¸öÍêÕûµÄ¡°¶à²ãÆóÒµ¿ª·¢¼Ü¹¹¡±¡¢ÒÔ¡°ÈÝÆ÷¡±ºÍ¡°×é¼þ¡±µÄÐÎʽÌṩ·þÎñ¡¢Ò»Ìס°³§ÉÌÖÐÁ¢µÄ¿ª·Å¼¼Êõ¹æ·¶¡±¡¢¶Ô¿ª·¢ÕßÒþ²ØÁ˲»Í¬Æ½Ì¨ºÍ¡°Öмä¼þ¡±µÄ¼¼Êõϸ½Ú¡¢ÊµÏÖÁËÆóÒµ¼¶Ó¦ÓüäµÄ¡°Î޷켯³É¡±µÈµÈ¡£ÔÚ½ñÌìµÄ¿ª·¢Õß¿´À´£¬ÕâÐ©ËÆºõ¶¼ÒѾÊÇÀÏÉú³£Ì¸£¬µ«ÔÚµ±Ê±µÄ³¡¾°Ï£¬ÉÁ¶¯ÔÚ»ÃµÆÆ¬ÉϵÄÿһ¸ö¿ÚºÅ£¬¶¼Òâζ×ÅÌýÖÚÃÇʺóÓÖÒª¾ÀúÒ»¶ÎÀ§ÄѵÄѧϰ¹ý³Ì¡£
ÐÒ¿÷ChandraÓÐÒ»¸±Á˲»ÆðµÄ¿Ú²Å£»Õâλ±¾¿ÆÄÖþѧµÄÓ¡¶ÈÒá¸ß²ãÖ÷¹Ü£¬Ì¸ÆðÈí¼þ¼Ü¹¹À´Ò²ÓÐÌØÇ¿µÄ¿Õ¼äÏëÏóÁ¦¡£ËýÇåÎúµØËµÃ÷ÁËÉè¼ÆJ2EE¼Ü¹¹µÄÁ½¸ö³õÖÔ£ºÊ×ÏÈ£¬¶ÔÓÚ³§ÉÌ£¬J2EEÒâζ×ÅÒ»Ì׿ª·Å±ê×¼£¬¼ÓÈëÕâ¸ö±ê×¼£¬ËûÃǵIJúÆ·¾Í¿ÉÒÔÔËÐÐÔÚ¸÷ÖÖ²»Í¬µÄ²Ù×÷ϵͳºÍ¹¤×÷»·¾³Ï£¬³ÉΪһ¸ö³ÉÊìµÄÆóÒµÔËËãÌåϵÖпÉÌæ»»µÄ²¿¼þ£»Æä´Î£¬¶ÔÓÚ¿ª·¢Õߣ¬J2EEÊÇÒ»Ì×ÏֳɵĽâ¾ö·½°¸£¬²ÉÓÃÕâ¸ö·½°¸£¬ÆóÒµÓ¦Óÿª·¢Öеĺܶ༼ÊõÄÑÌ⣨°üÀ¨¿çÆ½Ì¨ÒÆÖ²¡¢ÊÂÎñ´¦Àí¡¢°²È«ÐԵȵȣ©¾Í»áÓÈжø½â£¬¡°ÐÅÏ¢ÏñÒ»Ìõ²»¼ä¶ÏµÄºÓÁ÷£¬¾¹ý¸÷ÖÖ¸÷ÑùµÄƽ̨ºÍÉ豸£¬´ÓÆóÒµÓ¦ÓÃϵͳµÄÕâÒ»¶ËÁ÷ÏòÄÇÒ»¶Ë¡±¡£
ÒªÏëÀí½âÕâ¶Î»°ÔÚµ±Ê±µÄʵ¼ÊЧӦ£¬ÎÒÃÇÈÔȻҪ°Ñʱ¼äÖ¸Õ벦»Ø1999Äê¡£³ýÁËÔ¤±¸Ó½ÓǧÄê³æÖ®Í⣬99ÄêÄã×öÁËʲô£¿ÎªÁ˻شðÕâ¸öϬÀûµÄÎÊÌ⣬ÎÒ·³ö6ÄêǰµÄ¹¤×÷¼Ç¼£¬·¢ÏÖÁË×Ô¼ºÄÇʱ²ÎÓëµÄÒ»¸öÏîÄ¿µÄ¹æ¸ñ˵Ã÷Ê飬ËüÕýºÃÄÜÌṩһ·ù¡°JavaÆóÒµ¿ª·¢¡±ÔÚ1999ÄêµÄ±ê×¼ÕÕ¡£ÕâÊÇÒ»¼ÒÈÕ±¾ÖªÃûIT³§ÉÌµÄÆóÒµÐÅÏ¢¹ÜÀíϵͳ£¬ÔËÐÐÔÚNetScape 3.0 Goldä¯ÀÀÆ÷ÖеÄJava Applet½çÃæ£¬Í¨¹ýÒ»¸öרÓõÄÖмä²ãϵͳÓëOracle 8Êý¾Ý¿âÁ¬½Ó¡£Õâ¸öÖмä²ãÒѾÏ൱Ïֳɡ¢ÍêÉÆ£¬Äܹ»ÌṩԶ³Ì¶ÔÏóµ÷Óá¢ÊÂÎñ´¦ÀíµÈһϵÁеĵײã·þÎñ£»Áô¸øÎÒÃǵÄÈÎÎñÖ»ÊÇÍê³É·þÎñÆ÷¶ËÒµÎñ¶ÔÏó´úÂ룬ÒÔ¼°ÏàÓ¦µÄ¿Í»§¶Ë½»»¥¿ª·¢¡£
³ýÁËApplet¿Í»§¶ËÓÐÐ©ÌØ±ðÖ®Í⣬ÉÏÊöϵͳÓë½ñÌì³£¼ûµÄJ2EE¼Ü¹¹ºÜ½Ó½ü£»ÓÈÆäÊÇÒµÎñ¶ÔÏó±àÂëÒ²ÓÉhomeÀà¡¢PK£¨Ö÷¼ü£©Àà¡¢entityÀàµÈ²¿·Ö¹¹³É£¬ºÜ¶à»úÖÆ¶¼ÓëEJBÈç³öÒ»ÕÞ¡ª¡ªÖ»²»¹ýÕâЩÀಢûÓм̳Ðjavax.ejb°üµÄ½Ó¿Ú£¬¶øÊDzÉÓÃÁËרÓõÄAPI¡£ËüÓëEJBÖ®¼äµÄÏàËÆ²»ÏñÊÇżȻµÄ£¬Éè¼ÆÕ߿϶¨²ÎÕÕÁËSunÔÚ1997Äêµ×ÍÆ³öµÄEJB 1.0¼¼Êõ¹æ·¶¡£
»»ÑÔÖ®£¬ÔÚJ2EEµ®ÉúÒÁʼµÄÓï¾³ÖУ¬ÊÐÃæÉÏÒѾ´æÔÚןܶà³Ì¶È²»Ò»µÄ¡°×¼J2EEÖмä¼þ¡±ÁË¡£ËüÃÇÖ÷ÒªÓÃÓÚ½â¾öÈý´óÀàÎÊÌ⣺ÊÂÎñ´¦Àí¡¢·Ö²¼Ê½¶ÔÏó¹ÜÀíºÍWebÇëÇó´¦Àí¡£Ê×ÏÈ£¬ÊÂÎñ´¦Àí¹ÜÀíÆ÷£¨Transaction Processing Monitor£©Ò»Ö±ÊÇ¸ß¶ËÆóÒµ¼ÆËãÁìÓòµÄÈÈÃŲúÆ·£¬ÖøÃûµÄÓ¦Ó÷þÎñÆ÷³§ÉÌBEA£¬ÕýÊÇͨ¹ýÊÕ¹ºÊÂÎñ´¦ÀíÈí¼þTuxedo½øÈëÖмä¼þÊг¡µÄ¡£ÁíÒ»·½Ã棬´Ó90Äê´ú³õ¿ªÊ¼£¬Ô½À´Ô½¶àµÄÈ˰ѡ°N²ã·Ö²¼Ê½¶ÔÏó¼Ü¹¹¡± µ±³É´«Í³µÄ¿Í»§¶Ë/·þÎñÆ÷¼Ü¹¹µÄÌæ´ú·½°¸¡£ÄÇʱ¸Õ¸ÕÐËÆðµÄCORBA¼¼ÊõÊÇÍÆ¶¯ÕâÒ»Ç÷ÊÆµÄÖØÒªÁ¦Á¿£¨±ÈÈç˵£¬Ç°ÃæÌáµ½µÄÄǸöÓÉÈÕ±¾³§ÉÌ×ÔÐпª·¢µÄרÓÃÖмä²ã£¬¾Í²ÉÓÃÁËCORBA×÷Ϊ»ù´¡¼Ü¹¹£©¡£×îºó£¬Java¼¼ÊõÔÚWebÁìÓòÖеÄÓ¦ÓÃÒ²Êǵ±Ê±³õ¶ͷ½ÇµÄÈȵ㡣1997Äê6Ô£¬SunÔÚ·¢²¼Ò»¿î¡°Java Web Server¡±µÄͬʱµÚÒ»´Î¹«²¼ÁËServlet API£»Ã»Ïëµ½ÕâÏî¼¼Êõ¸±²úÆ·£¨Á¬Í¬1998ÄêÎÊÊÀµÄJSP£©ÕýºÃÓºÏÁ˳§É̵ÄÕ½ÂÔÐèÒª¡£¶ÔÓÚÉÏÃæÌáµ½µÄN²ã¼Ü¹¹À´Ëµ£¬HTTP·þÎñÊÇÒ»¸ö·Ç³£ÀíÏëµÄǰ¶Ë£»ËùÒÔ»ùÓÚJavaµÄWebÒýÇæ£¬Ò²ÔÚ´Ëʱ³ÉÁËÆóÒµ¼¶Java½â¾ö·½°¸µÄÒ»¸ö±Ø²»¿ÉÉٵIJ¿·Ö¡£
Java¡¢Web¡¢ÊÂÎñ¡¢·Ö²¼Ê½¶ÔÏó£¬Õ⼸¹É¿ª·¢³±Á÷»ãºÏÔÚÒ»´¦£¬ÐγÉÁ˵±Ê±×îÈÈÃŵIJúÆ·¡°Ó¦Ó÷þÎñÆ÷£¨Application Server£©¡±»ò¡°Öмä¼þ£¨Middleware£©¡±¡£ÎªÁ˸ø¶¨Óï¡°×îÈÈÃÅ¡±×÷¸ö×¢ÊÍ£¬ÎÒÃÇ¿ÉÒÔ²ÎÕÕÒ»ÏÂBEA¹«Ë¾ÔÚ1998ÄêÊÕ¹ºWebÓ¦Ó÷þÎñÆ÷³§ÉÌWeblogicµÄ³É½»¼Û£º1.92ÒÚÃÀÔª¡£¶øÕâ²¢²»ÊÇÒ»×®¹ÂÁ¢µÄÊÕ¹º£¬NetScapeºÍSunÒ²ÒÔÏà½üµÄ¼Û¸ñÂòÏÂÁËÁíÍâÁ½¼ÒÆóÒµKivaºÍNetDynamics¡£¶øÕâÒ²ÕýÊÇJ2EE¹æ·¶³ǫ̈µÄ±³¾°£º¼¸ºõËùÓÐÒª³§É̶¼ÍƳöÁË¡¢»òÊÇÕýÔÚ¸ÏÖÆ×Ô¼ºµÄÓ¦Ó÷þÎñÆ÷²úÆ·£¬µ«Õâ¸ö¡°Ó¦Ó÷þÎñÆ÷¡±¾¿¾¹Ó¦¸ÃÊÇʲô¶«Î÷£¬¾ºÕùÕßÃÇÓÖ¸÷ÓбíÊö¡¢ÄªÖÔÒ»ÊÇ¡£
˵µ½ÕâÀÎÒÃDzÅÊáÀí³öÁËJ2EE¼¼Êõ¹æ·¶µÄµÚÒ»¸ö°æ±¾ÔÚ1999Äê12ÔÂÎÊÊÀµÄʵ¼ÊÒâÒå¡£Ê×ÏÈ£¬ËüΪJavaÆóÒµ¿ª·¢ÌṩÁËÒ»·ùÇåÎúµÄÈ«¾°£¬¸÷Ïî·ÖÖ§¼¼ÊõÔÚÕâ¸öÁìÓòÖеĵØÎ»ºÍ×÷Óõõ½Á˿͹ۡ¢×¼È·µÄ¶¨Òå¡£ÖÁ´Ë´ó¼Ò²Å¶ÔÒ»¸öJavaÆóÒµ½â¾ö·½°¸µÄ¹¹³ÉÒªËØÓÐÁË»ù±¾¹²Ê¶¡£Æä´Î£¬ËüʹÓá°ÈÝÆ÷¡±ºÍ¡°×é¼þ¡±µÈ¸ÅÄîÃè»æÁËJavaÆóҵϵͳµÄÒ»°ã¼Ü¹¹£¬Ã÷È·µØ»®·ÖÁËÖмä¼þ³§É̺ÍÓ¦Óÿª·¢ÕßµÄÖ°ÔðËùÔÚ¡£×îºó£¨µ«¾ø·Ç×î²»ÖØÒªµØ£©£¬J2EEͨ¹ýÒ»Ì×¹«¿ª±ê×¼¹æ¶¨ÁËÓ¦Ó÷þÎñÆ÷²úÆ·µÄ¾ßÌåÐÐΪ£¬ÔÚÖ´Ðд˱ê×¼µÄ³§É̲úÆ·Ö®¼äʵÏÖÁËÒ»¶¨³Ì¶ÈµÄ¿ÉÌæ»»ÐԺͻ¥²Ù×÷ÐÔ¡£µ±Ê±µÄýÌåÓá°B2B¿ª·¢µÄĬÈϱê×¼¡±Ö®ÀàµÄ˵·¨»¶ºôÕâÏîÀï³Ì±®Ê½µÄ³É¾Í¡ª¡ªÄÇЩ׫¸åÈËÄÄÀïÖªµÀ£¬ÔÚJ2EEÓëÄǸö±»³ÆÎª¡°B2B¡± µÄ¶ÌÃüйóÖ®¼ä£¬Æäʵ²¢²»»áÓÐÌ«¶à¹ÊÊ·¢Éú£»Í¬Ñù£¬ËûÃÇÒ²²»»áÏëµ½£¬J2EEÒªÏë³ÉΪһÖÖÕæÕý³ÉÊìµÄ¿ª·¢·¶Ê½£¬Ç°·½»¹ÓÐÒ»¶ÎԶΪ¼èÐÁµÄÂó̡£
ÉçÇøµÄÐγÉ
¼ÇµÃKruglinskiÔÚÃûÖø¡¶Inside Visual C++¡·µÄij¸ö°æ±¾Öиø³öÁËÒ»¸öWebä¯ÀÀÆ÷µÄ´úÂëÀý×Ó£»ÔÚÕâÒ»½ÚµÄ¿ªÍ·Ëû˵µ½£ºÈç¹ûÄ㼸Äêǰ¿ª·¢ÁËÒ»¸öWebä¯ÀÀÆ÷£¬Äǿ϶¨»á¸øÄã´øÀ´ÉÏǧÍòµÄÊÕÒæ£»µ«Èç¹ûÄãÏÖÔÚ²ÅÏëµ½¿ª·¢Õâ¸ö¶«Î÷¡ª¡ªÄÇÒ²¾ÍÊǸöC++ÓïÑÔµÄÁ·Ï°°ÕÁË¡£ÔÚ½ñÌìµÄ³ÌÐòÔ±ÑÛÖУ¬Ó¦Ó÷þÎñÆ÷ËÆºõÒ²³ÉÁ˼۸ñµÍÁ®£¨Èç¹û²»ÊÇȫȻÃâ·Ñ£©µÄÈÕÓÃÏû·ÑÆ·¡£ËùÒÔ£¬ÏëÒªÀí½âËüÃÇÔÚÄǼ¸ÄêµÄ´óÐÐÆäµÀ£¬¾Í·ÇµÃ½èÖúKruglinskiÕâÑùµÄÖǻ۲»¿É¡£ÔÚ1999Äêµ×£¬ÊÐÃæÉÏ¿ÉÒÔÕÒµ½30ÖÖÒÔÉÏ×Գơ°JavaÓ¦Ó÷þÎñÆ÷¡±µÄ²úÆ·£¬¿É¼ûµ±Ê±ÕâÀàÈí¼þÊÇÍøÂç·çÏÕͶ×ʵijè¶ù¡£µ«ÊÇ´Ëʱ³ǫ̈µÄJ2EE¹æ·¶¾ÍÏñÊÇÒ»Õóϯ¾íÕû¸ö²úÒµµÄ¾¢·ç£¬ÔÚÒ»Ò¹Ö®¼ä£¬ËùÓÐÈ˶¼ÓÐÁËÅжÏʲôÊÇÒ»¸ö¡°Ó¦Ó÷þÎñÆ÷¡±µÄȨÍþ;¾¶¡£
ΪÁË»ñµÃÒ»ÕÅJ2EE¾º¼¼³¡µÄÈ볡ȯ£¬¸÷¼Ò³§ÉÌÃæÁÙÁ½ÏÑ飺Ê×ÏÈ£¬Òª¾ßÓÐÄܹ»¸²¸ÇJ2EEÖÐËùÓÐÖ÷Òª¼¼ÊõµÄ²úÆ·Ïß¡£ÕâÔÚµ±Ê±ÊÇÒ»Ïî·Ç³£¿Á¿ÌµÄÒªÇó£¬ÔÚûÓпªÔ´²úÆ·¿É¹©²ÎÕÕµÄÇé¿öÏ£¬¶Ìʱ¼äÄÚÍÆ³ö°üÀ¨EJBÈÝÆ÷¡¢WebÒýÇæºÍJMSÖмä¼þµÄÕûÌå½â¾ö·½°¸£¬Õâ¾ö²»ÊÇËæ±ãÄļҴ´Òµ¹«Ë¾¶¼Äܰ쵽µÄ¡£Íê³ÉÁËÈô¸É´Î³É¹¦µÄ²¢¹ºÖ®ºó£¬BEAÔÚÕâÒ»µãÉÏÇÀÕ¼ÁËÏÈ»ú£¬ÍêÕûµÄ²úÆ·ÏßʹËü³ÉÁËÈËÃÇÐÄÄ¿ÖеÄÊ×Ñ¡J2EEƽ̨ÌṩÉÌ¡£Æä´Î£¬ÒªÈòúƷͨ¹ýSunµÄJ2EE¼æÈÝÐÔ²âÊÔ¡£Òª×öµ½ÕâÒ»µãͬÑù²»Ò×£º¾ÍÁ¬IBMµÄWebSphereҲһʱ»¹Ã»´ïµ½°Ù·ÖÖ®°ÙµÄEJBÖ§³Ö¡£µ½2000Äêµ×Ϊֹ£¬¹²ÓÐ15¼Ò³§ÉÌÄܹ»ÌṩÍêÕûµÄJ2EE½â¾ö·½°¸£¬ÆäÖÐ9¼Ò£¨°üÀ¨Sun±¾Éí£©ÊµÏÖÁË¡°J2EE¼æÈÝ¡±£¬ËûÃÇÖмä°üÀ¨ÁËÈÕºóÕâ¸öÁìÓòµÄÖ÷Òª¾ºÕùÕß¡£ºÁÎÞÒÉÎÊ£¬ÕâÊÇÒ»´Î·Ç³£²Ð¿áµÄÐÐÒµÏ´ÅÆ£¬µ«ÁôÔÚ³¡Äڵij§ÉÌÒ²ÏàÓ¦µØÐγÉÁËÍÆ¶¯J2EE·¢Õ¹µÄÖ÷ÌåÁ¦Á¿¡£
ÉÏÃæËµ¹ý£¬ÔÚËüµÄ·õ»¯½×¶Î£¬SunµÄJ2EEÍŶÓÖ÷¹ÜÊÇŮǿÈËMala Chandra£¬Ëý±¾ÈËËä²»Êǹ¤³Ìʦ³öÉí£¬µ«¶Ô¼¼ÊõÓÐןÜÇ¿µÄ¸ÐÖªÄÜÁ¦ºÍÏëÏóÁ¦£»J2EEÒ»³ǫ̈¾ÍÄܹ»ÎªÈËÃÇÌṩһ·ùÍêÕû¡¢Ö±¹Û¶ø²»Ê§ÉîåäµÄͼ¾°£¬´ËÖе±È»ÓÐChandra±¾È˵ĴóÁ¿¹±Ïס£ÔÚËýÖ±½ÓÁ쵼Ϲ¤×÷µÄ¼¸Î»¹¤³Ìʦ£¬Ò²¶¼ÊÇSunÄÚ²¿·Ç³£½Ü³öµÄÈ˲š£ÎÞÂÛÊÇÖÆ¶¨ÁËJDBC¡¢JMSµÈ¹æ·¶µÄMark Hapner¡¢JavaMailµÄÉè¼ÆÕßBill Shannon£¬»¹ÊÇEJBµÄÖ÷ÒªÉè¼ÆÕßVlada Matena£¬ºóÀ´¶¼ÊÇÒµ½çÒ»ÑԾŶ¦µÄ¼¼ÊõÁìÐä¡£Õâ¸ö°à×ӵĺÏ×÷ʱ¼ä²¢²»Ì«³¤£º2000Äê×óÓÒµÄÄǸöʱÆÚÕýÊÇIT½ç´´ÒµµÄ»Æ½ðÄêÔ£¬ChandraºÜ¿ì¾ÍºÍSun¹«Ë¾Java²¿ÃŵÄ×ܲã¨Ò²ÊÇ´´ÔìJavaµÄ¹¦³¼Ö®Ò»£©Alan BaratzÒ»Æð£¬µ½Ò»¼Ò¸ÕÆð²½µÄEmailÖмä¼þ¹«Ë¾ZapletÌÔ½ðÈ¥ÁË£»½Ý¿ËÒáµÄ¿ª·¢Ìì²ÅMatenaÒ²À뿪Sun¿ª°ìÁË×Ô¼ºµÄ¹«Ë¾¡£ÁôϵÄÁ½¸öÈËHapnerºÍShannonÏȺóµ£ÈÎÁËJ2EE¼¼ÊõµÄÊ×ϯÉè¼ÆÊ¦¡£
¶àÄêÒÔºó£¬Hapner»ØÒäÆðJ2EE³õ´´µÄÄǸöʱÆÚ£¬Éî¸ÐÈç½ñSun¶ÔJavaµÄ×óÓÒÄÜÁ¦ÒѾ´ó²»Èçǰ£º¡°ÏÖÔÚ£¬JavaÊÂʵÉÏÊôÓÚÕû¸ö¼¼ÊõÉçÇø£¬ËüµÄ·¢Õ¹ÓÐÀµÈ«Ìå²ÎÓëÕßµÄÍÆ¶¯¡£¡±µÄÈ·£¬Èç½ñSunÒѾ²»Ì«¿ÉÄÜÖØÑݵ±ÄêµÄ¿ªÍØÐÔ¹¦¼¨£¬ºÜÄÑÔÙΪһ¸öÒѾ³ÉÐεÄÁìÓòÖØ»æ°æÍ¼¡£µ«ÕýÈçÉÏÎÄËù˵£¬¼´Ê¹ÊÇÔÚ1999Ä꣬J2EEÉè¼ÆÕßÃÇÃæ¶ÔµÄÒ²²»ÊÇÒ»ÕÅ´Óδ×ÅÄ«µÄ°×Ö½¡£ËûÃǵÄÉè¼ÆÊ¼ÖÕÒªÒÔ¸÷´ó³§É̵ÄÏÖÓвúƷΪ³ö·¢µã£¬ÕâÒ²ÊÇÌì²ÅµÄÉè¼ÆÊ¦ÃÇ×ö³öµÄÉè¼ÆÈ´Ô¶·ÇÍêÃÀµÄÔÒòÖ®Ò»£ºÓë´ÓÍ·Éè¼ÆÒ»ÃÅȫеıà³ÌÓïÑÔ²»Í¬£¬J2EE¹æ·¶´ÓÒ»¿ªÊ¼¾ÍÊǸ÷·½²©ÞĺÍÍ×еIJúÎï¡£
ºÜÈÝÒ××¢Òâµ½£¬J2EEÓëJavaÉçÇøµÄ¾ö²ß»úÖÆJCP£¨Java Community Process£©ÊǼ¸ºõͬ²½²úÉúµÄ¡£J2EEÏÂÊôµÄ¸÷ÖÖ¼¼Êõ¹æ·¶£¬°üÀ¨1.4°æÖ®ºóµÄJ2EE±¾Éí£¬¶¼×÷Ϊ´ý¾ö¹æ·¶Òé°¸£¨JSR£¬Java Specification Request£©±»ÄÉÈëÁËJCPµÄÒé³Ì¡£ÕâЩÒé°¸µÄÉóÒé¹ý³ÌºÜÉÙÊÇÒ»·«·ç˳µÄ£¬¼¸ºõÿһ¸ö¶¼Òª¾Àú18¸öÔÂÒÔÉϵÄÀ¾âÕ½¡£ÔÚ¶àÏî¼¼Êõ¹æ·¶µÄÉóÒé¹ý³ÌÖУ¬ÎÒÃǶ¼¼ûµ½ÁËÕâÑùµÄÏÖÏó£º×î³õÁÐÃûÉóÒéίԱ»áµÄij¼ÒÖ÷Òª³§ÉÌ£¬Ã»Äܵȵ½¸Ã¹æ·¶Í¨¹ý¾ÍÒѾ±»ÊÕ¹º»òµ¹±ÕÁË¡£Óë΢ÈíÔÚ.NETƽ̨ÉϵÄǬ¸Õ¶À¶ÏÏà±È£¬J2EE·¢Õ¹ÖеÄÕâ¸ö¡°Å£²½¡±ÌØÕ÷Ëä˵ÊÇÉóÉ÷ºÍÃñÖ÷µÄ±íÏÖ£¬µ«Öչ鲻·ûºÏÈí¼þÑÝ»¯Ó¦ÓеÄËÙ¶È¡£
J2EEÉçÇøÖеÄÁíÒ»¹ÉÖØÒªÁ¦Á¿£¬µ±È»ÊÇÖÖÀ༫Ϊ·á¸»µÄ¿ª·ÅÔ´´úÂëÏîÄ¿¡£2002ÄêÒÔÀ´£¬ÔÚJ2EEÁìÓòµÄ¸÷¸ö²ãÃæÉÏ£¬¼¸ºõËùÓÐÖ÷Á÷²úÆ·¶¼ÓÐÀ´×Ô¿ªÔ´ÏîÄ¿µÄÌæ´ú·½°¸£¬ÔÚÆäÖкܶàλÖÃÉÏ£¬¿ªÔ´²úÆ··´¶øÊÇʤ¹ýÉÌÒµ²úÆ·µÄÊ×Ñ¡¡£µ«Çë±ðÎó½â£¬ÕâÀïµÄ¡°¿ªÔ´¡±²¢²»Òâζ×ÅÍêÈ«µÄ×Ô¶¯×Ô·¢£¬J2EEÊÀ½çÖеĿªÔ´ÏîĿҲÓëLinux»òPHPÊÀ½çÆÄΪ²»Í¬¡£Ôںܶà·Ç³£³É¹¦µÄJ2EE¿ªÔ´ÏîÄ¿±³ºó£¬ÎÒÃǶ¼ÄÜ·¢ÏÖÉÌÒµ»ú¹¹µÄÍÆ¶¯×÷ÓãºApacheµÄJakartaÉçÇøÊÇIBM·öÖ²µÄ½á¹û£»ÊµÏÖÁË¿ªÔ´Ó¦Ó÷þÎñÆ÷JOnASµÄObjectWeb£¬ÔòÊÇÐí¶à·¨¹úIT³§ÉÌ£¨°üÀ¨Èô¸ÉÕþ¸®²¿ÃÅ£©ºÏ×ÊÖ§³ÖµÄÒ»¸öÁªÃË×éÖ¯¡¡ÕâЩÓÐÉÌÒµ±³¾°µÄ¿ªÔ´ÏîÄ¿×ʽðÐÛºñ£¬ÈËÔ±ÆëÕû£»¸üÖØÒªµÄÊÇ£¬´ÓͶ×ÊÕßµ½¿ª·¢Õߣ¬²ÎÓëÕâЩÏîÄ¿µÄºÜ¶àÈ˶¼ÌåÏÖÁËÈí¼þ¹¤ÒµÖÐÄѵõķǹ¦ÀûÐÄ̬£¬Òò¶ø×îÖÕÍÆ³öµÄ²úÆ·ÖÊÁ¿ÉõÖÁ¸ßÓÚͬÀàÐ͵ÄÉÌÒµÈí¼þ¡£ÔÚÖ÷Á÷³§ÉÌÖ®Í⣬ËüÃÇÊÇÖ§³ÅJ2EE´óÏôæÔÚµÄÒ»×é»ùʯ¡£
ÁíÒ»·½Ã棬²»ÉÙ¿ª·¢ÕßÒ²¼ä½ÓµØÍ¨¹ý×Ô¼ºµÄ¿ªÔ´²úÆ·»ñµÃÁ˿ɹ۵ÄÓ¯Àû¡£ÕâЩÈË´ó¶àÒÔÃâ·ÑµÄ¿ªÔ´²úƷΪÒÀÍУ¬ÒÔÊÕ·Ñ·½Ê½Ìṩ¸½¼ÓµÄ×Éѯ¡¢·½°¸ÊµÊ©ÒÔ¼°¼¼ÊõÖ§³Ö·þÎñ¡£Marc Fleury£¬¿ªÔ´Ó¦Ó÷þÎñÆ÷µÄJBoss´´Ê¼ÈË£¬²»ÎÞì¶ÜµØ°Ñ×Ô¼º³«µ¼µÄÕâÖÖÉÌҵģʽ³ÆÎª¡°Ö°Òµ¿ªÔ´¿ª·¢¡±¡£
ÎÞÂÛ½ÐËüʲô£¬¸ß¶Ë²úÆ·µÄ¿ªÔ´»¯/Ãâ·Ñ»¯Ô˶¯×¢¶¨ÒªÔÚJ2EE²úÒµµÄ·¢Õ¹¹ý³ÌÖÐÖÆÔìÏÔÖøµÄºó¹û¡£¡°JBossµÄÐо¶¶ñ»¯ÁËJ2EEµÄÉÌÒµ»·¾³£¬¡±ÕâÊÇMcNealyÏÈÉú2002ÄêµÄÖøÃûÂÛ¶Ï¡£ËûµÄÍÆÀí¹ý³ÌÈçÏ£ºÖ»ÓÐ×öºÃÉÌÒµÍÆ¹ã£¬J2EE²úÆ·²ÅÄÜ×îÖÕ»÷À£Ð°¶ñµÄ.NETƽ̨£»µ«¿ªÔ´·þÎñÆ÷»á½µµÍÖ÷Á÷³§É̵ÄÏúÊÛÀûÈó£»ÏúÊÛÀûÈóÔ½µÍ£¬ÓÃÓÚÉÌÒµÍÆ¹ãµÄÔ¤Ëã¾ÍÔ½ÉÙ£»Òò´Ë£¬Õû¸öJ2EEÕóÓª¶¼½«ÊÜËðÓÚJBoss¡£
µ«ÔÚ¿ñÈȵĿªÔ´Ô˶¯Ö§³ÖÕß¿´À´£¬ÒÔÉÏÂÛÖ¤µÄ´óǰÌá¾ÍÊÇ¿ÉÒɵġ£¡°ÄѵÀÖ»Óлá×ö¹ã¸æµÄÈí¼þ²ÅÊǺÃÈí¼þ£¿MySQLÓйý¶àÉÙ¹ã¸æÔ¤Ë㡱ÕùÂÛµÄË«·½¶¼ÈÏΪ¶ÔÊÖÎó½âÁËÈí¼þÉÌҵģÐ͵ÄʵÖÊ¡£¾¿¾¹Ë²ÅÕÆÎÕÁËÕâÀïµÄÕæÀíÄØ£¿Ò²ÐíÖ»Óиù¾ÝJ2EEµÄδÀ´¡ª¡ªÒ²¾ÍÊÇËüµÄÄ¿±êºÍÖյ㣨Telos£©¡ª¡ª²ÅÄÜ×ö³ö×îÖյIJþö¡£
¼¼ÊõµÄÀëÐÄÁ¦
¿¼²ìÊÂÎïµÄÑÝ»¯£¬Í¨³£ÓÐÁ½ÖÖ¶ÔÁ¢µÄ·½·¨¡£¿¼¹Åѧ¼Ò£¨Archaeologist£©Ì½¾¿ÕØÊ¼ºÍÆðÔ´£»Ä¿µÄÂÛÕߣ¨Teleologist£©Ôò½ÒʾĿµÄºÍÖյ㡣¶ÔÓÚǰÕߣ¬¡°¿ª¶Ë£¨Ï£À°ÓïArche£©¡±´Ó¸ù±¾ÉϾö¶¨Á˴˺óµÄ·¢Õ¹£¬²ÎÌì´óÊ÷µÄ·±Ã¯¶¼°üº¬ÔÚÖÖ×Ó×î³õµÄÃÈÑ¿ÖУ»¶ø¶ÔÓÚºóÕߣ¬¡°Ä¿µÄ£¨Telos£©¡±²ÅÊÇÊÂÎïµÄ¸ù±¾ºÍÖ¼¹é£ºËû¼û¹ýÑù̬ÍêÉÆµÄÊ÷£¬ËÒ²¾Íû·¨Åª¶®ÖÖ×Óµ½µ×ÊÇÔõô»ØÊ¡£
ÔÚJ2EEÎåÄêÖ®ºó£¬ÈËÃÇÖ»Äܽ»ÌæµØÓÃÕâÁ½ÖÖÄ¿¹âÉóÊÓËüµÄÑÝ»¯Àú³Ì¡£ËüµÄÆðÔ´ÓëËüµÄÄ¿µÄ¡¢¡°Ëü´ÓºÎ´¦À´¡±Óë¡°ËüÍùºÎ´¦È¥¡± µÄÎÊÌâ½ôÃܵؽ»Ö¯ÔÚÒ»Æð£¬ËʰÆðÁËÆäÖеÄÒ»¸ö£¬ËÒ²¾ÍÒªÁ¬Í¬ÁíÒ»¸öÒ»Æð»Ø´ð¡£
½ñÌìµÄJ2EEÔÚ¶à´ó³Ì¶ÈÉÏ·ûºÏËüµÄ³õÖÔ£¿»Ø´ðÕâ¸öÎÊÌâ²¢²»Éæ¼°¶ÔJ2EE¼¼Êõ³É°ÜµÄÆÀÅУ¬¶øÖ»ÊÇÒª¿¼²ìһϣºËüÊÇ·ñ»¹ÔËÐÐÔÚ×î³õ¿ª±ÙµÄÄǸö¿Õ¼äÖ®ÖС£ÔÚÊÂÎñ´¦Àí¡¢¶ÔÏó·Ö²¼»¯ºÍWebÇëÇó´¦ÀíÕâÈý¸ö·½ÃæÖУ¬Ò²ÐíJ2EE¶ÔÊÂÎñºÍWeb±£³ÖÁËÒ»¹áµÄÖҳϡ£ÎÒÃǼǵÃFleuryϲ»¶Öظ´µÄÒ»¸öÐÅÌõ:¡°He who owns the transactional Web owns the Web£¨ËÕÆÎÕÁË´øÊÂÎñ´¦ÀíµÄWeb£¬Ë¾ÍÕÆÎÕÁËWeb£©¡±Web½Ó¿ÚÊǽñÌì´ó²¿·ÖJ2EEÓ¦Óñ©Â¶µÄΨһ½Ó¿Ú£»¶øËäÈ»ÊÂÎñ´¦ÀíµÄ³£Ó÷½·¨ÒѾÓÐÁ˺ܴó¸Ä±ä£¨½èÖúAOP»úÖÆ£¬ºÜ¶à·ÇEJB¼Ü¹¹µÄϵͳҲ×ÔÈçµØÊµÏÖÁËÉùÃ÷ʽµÄÊÂÎñ´¦Àí£©£¬µ«¶ÔÊÂÎñµÄÖØÊÓµ±È»ÈÔ½«ÊÇJ2EE¿ª·¢ÖеÄÒªËØÖ®Ò»¡£
»»ÑÔÖ®£¬ÔÚ5ÄêµÄÑÝ»¯ÖУ¬J2EE·¢ÉúµÄ×î´ó±ä»¯¿ÉÄܾÍÔÚÓÚËü·ÅÆúÁ˶ԡ°·Ö²¼Ê½¶ÔÏóÄ£ÐÍ¡±µÄÇ¿µ÷¡£EJB2.0ÒýÈëµÄ±¾µØ½Ó¿ÚʹµÃWeb²ãÓëEJB²ã¿ÉÒÔÔËÐÐÔÚͬһ¸öJavaÐéÄâ»úÖУ¬´Ó¶øÊ¹WebÈÝÆ÷ÓëEJBÈÝÆ÷µÄÎïÀí·ÖÀ벿Êð±ä³ÉÒ»ÖÖ°º¹óµÄÈßÓࣻJ2EE 1.4ÒÔºó°æ±¾Ö§³ÖµÄWeb Services¼æÈÝÐÔ£¬Ê¹µÃ¿Í»§¶Ë¿ÉÒÔͨ¹ý´ÖÁ£¶ÈµÄWeb½Ó¿Úµ÷ÓÃÔ¶³Ì·þÎñ¡ª¡ªÕâÁ½´Î±ä»¯ÊÂʵÉ϶¼ÊÇÔÚÂÛÖ¤¡°·Ö²¼Ê½¶ÔÏó¼Ü¹¹¡±µÄÎÞÓÃÐÔ¡£ÈËÃÇ·¢ÏÖ£¬Í¬Ò»ÏµÍ³µÄ¸÷¸ö·Ö²ã×îºÃ²ÉÓÃϸÁ£¶È½Ó¿Úµ÷Ó㬲¢ÇÒÔËÐÐÔÚͬһ¸ö½ø³ÌÖУ»Ö®ËùÒÔ»®·Ö²»Í¬µÄ²ã´Î£¬ÓëÆä˵ÊÇΪÁËʵÏÖÎïÀíÉϵĿÉÀ©Õ¹ÐÔ£¬²»Èç˵ÊÇÉè¼ÆÃÀѧÉϵĿ¼ÂÇ¡£¶ø¶ÔÓÚÒìÖÊϵͳ֮¼äµÄµ÷Óã¬ÔòÓ¦¸Ã¾¡Á¿Ñ¡ÓÃÒì²½µÄ¡¢´ÖÁ£¶ÈµÄ·þÎñ½Ó¿Ú£¨ËùÒÔWeb Services³ÉΪÁ˷dz£ÀíÏëµÄÑ¡Ôñ£©¡£»»¾ä»°Ëµ£¬´«Í³Éϵġ°·Ö²¼Ê½¶ÔÏó¼Ü¹¹¡±£¬ÏÖÔÚ¿´À´ËƺõÖ»ÊʺÏÓÚÒøÐÐÔ¶³ÌÖ§¸¶µÈÒªÇó¼«Îª¿Á¿ÌµÄÓ¦Óó¡¾°£¬¶ø¾ø²»ÊÇËùÓÐJ2EEÓ¦Óö¼¸Ã¿¼Âǵıê×¼·½°¸¡£
Ç°ÃæÃèÊöµÄÀëÐÄÏÖÏó±Ï¾¹»¹×ñÑÁËJ2EE·¢Õ¹µÄÄÚÔÚÂß¼£¬Ëµµ½µ×£¬EJBµÄ¸ïкÍWeb ServicesµÄÒýÈë¸ü¶àµØÊÇÖ÷Á÷³§É̳«µ¼µÄ½á¹û¡£µ«ÔÚ½üÄêÀ´£¬»¹ÓÐÒ»¹É¸üÇ¿¾¢µÄÀëÐij±Á÷ÔÚÉî¿ÌµØÓ°Ïì×ÅJ2EEµÄÑݽø£¬ËüÕØÊ¼ÓÚÉÏÎÄÌáµ½µÄ¿ªÔ´Èí¼þÔ˶¯¡£×î³õËüÖ»ÔÚRickard ObergµÄ¶¯Ì¬´úÀíRMIÉè¼ÆÓëJBoss·þÎñÆ÷µÄ΢Äں˼ܹ¹ÖÐÏÔ¶¹ýа¶ñµÄÒ»½Ç£¬µ«ÊÇÁ½ÈýÄêÀ´£¬¾¹ý¶à¸öÏîÄ¿¡¢¸÷ÖÖ¼¼ÊõÔÓÖ¾/ÂÛ̳/BlogµÄÕÛÉäºÍ·Å´ó£¬ËüÒѾÐγÉÁËÒ»¸öÃûΪ¡°ÇáÁ¿¼¶ÈÝÆ÷¼Ü¹¹¡±µÄÍêÕû½â¾ö·½°¸£¬²¢±©Â¶³öÍêȫȡ´ú´«Í³EJB¼Ü¹¹µÄÖÕ¼«Ò°ÐÄ¡£°´ÕÕÕâÒ»Ô˶¯ÐÅͽÃǵÄ˵·¨£¬J2EEµÄ·¢Õ¹Ê·ÉÏÖ»³öÏÖ¹ýÒ»¸ö´íÎ󡪡ª²»ÐÒµÄÊÇ£¬Õâ¸ö´íÎóÃû½ÐEJB¡£ÓëEJBÌṩµÄÖØÁ¿¼¶¼Ü¹¹²»Í¬£¬½èÖúAOPºÍIoC»úÖÆ£¬ÇáÁ¿¼¶ÈÝÆ÷Äܹ»×î´ó³Ì¶ÈµØ½µµÍ´úÂë¶ÔÓÚרÓýӿڵÄÒÀÀµÐÔ£¬ÒÔ¼ò¶Ì¡¢Çá±ã¡¢×¨×¢¡¢¿ÉÒÆÖ²µÄ·½Ê½ÊµÏÖÒµÎñ¶ÔÏó¡£´Ó¡°ÇáÁ¿¼¶ÈÝÆ÷¼Ü¹¹¡±Õâ¸ö´Ê±»·¢Ã÷³öÀ´µÄÄÇÒ»¿ÌÆð£¬ÈËÃǶÔJ2EEÔ¶¾°µÄ¿¼ÂǾͷ¢ÉúÁ˸ù±¾ÐԵķÖÁÑ£ºSunºÍ´ó²¿·ÖÖ÷Á÷³§É̸ü¶àµØ¹Ø×¢ÓÚ¡°Web Services¡±ºÍ¡°¿ìËÙ¿ª·¢¹¤¾ß¡±ÕâЩÀûÈóÔö³¤µã£¬¶øÒ»²¿·ÖÀë¾ÅѵÀµÄ¶ÀÁ¢×¨¼ÒºÍ¿ª·¢ÕßÔòÈÏΪ£¬Èç¹û²»°ÑÇáÁ¿¼¶ÈÝÆ÷ÄÉÈë¹æ»®£¬J2EEµÄ·¢Õ¹À¶Í¼¾Í×¢¶¨ÎÞ×ã³ÆµÀ¡£Æäʵ£¬Ë«·½ÕùÖ´µÄ¹Ø¼üÊÇ´«Í³ÒâÒåÉϵġ°Ó¦Ó÷þÎñÆ÷¡±µÄ´æÍö¡ª¡ªÈç¹ûËùÓÐÆóÒµ¼¶·þÎñ¶¼¿ÉÒÔͨ¹ýAOP»úÖÆÌṩ¸øÆÕͨJava¶ÔÏó£¬Èç¹û¹ÜÀíÒµÎñ¶ÔÏóÉúÃüÖÜÆÚµÄ¿ÉÒÔÊÇÒ»¸ö×î΢²»×ãµÀµÄ¡°Î¢Äںˡ±£¬ÄÇôÉî¿øÖØîøµÄÓ¦Ó÷þÎñÆ÷»¹ÓÐʲô´æÔÚÀíÓÉ£¿¶øÈç¹ûʧȥÁËÓ¦Ó÷þÎñÆ÷µÄÕâ¸ö²úÆ·ÀàÐÍ£¬ÄÇЩ¿¿ÕâÏîÏúÊÛÆð¼ÒµÄ³§ÉÌÓÖ½«ºÎÒÔ×Ô´¦£¿
ÕýÊÇÔÚÕâÀÁ½¸öÕóÓªÖ®¼ä´æÔÚ×Å×îÉî¿ÌµÄÀûÒæ·ÖÆç£»¶øÕⳡÕùÖ´µÄ½á¾Öµ±È»Ò²½«¾ö¶¨J2EE£¨ÄËÖÁJavaÆóÒµ¿ª·¢£©µÄ×îÖÕ×ßÏò¡£»òÐíÁ½ÄêÖ®ºó£¬ÎÒÃǽ«´Ó·×ÕùÖÐʤÀûÕßÒ»·½µÄ½Ç¶ÈÖØÊöJ2EEµÄÕû²¿ÀúÊ·¡ª¡ª»òÐíÁ½ÄêÖ®ºóµÄJ2EE±¾ÉíÒ²½«Ëæ×Å·×ÕùµÄ½â¾ö¶ø³ÉΪÀúÊ·¡£µ«ÈÃÎÒÃÇ»»¸öÀֹ۵ĿÚÎÇ£ºÎÊÊÀÎåÄ꣬J2EEµÄÀúÊ·ÈÔÔÚ³ÖÐøµÄ´´ÉúÖ®ÖУ»´ËÊ±ÉÆ´ýÕâÊ÷ÖÖµÄÈË£¬Ò²±ØÔÚ½ñºóµÄÊ÷ÒñÏ»ñµÃËüµÄ×£¸£¡£
JavaÊ®ÄêÓгÉ
¡ª¡ªÌ¸J2MEµÄ·¢Õ¹ÀúÊ·
ÎÄ/ÍõÉ
Java±¾À´¾ÍÊÇΪÁËǶÈëʽϵͳ¶øÉú
1990Äê12Ô£¬SunÄÚ²¿ÓÉJames Gosling¡¢Patrick NaughtonÒÔ¼°Mike Sheridan³ÉÁ¢ÁËÒ»¸ö½Ð×öGreen TeamµÄС×é¡£Green TeamС×éµÄÖ÷ҪĿ±ê£¬ÊÇÒª·¢Õ¹Ò»ÖÖмܹ¹£¬¶øÕâÖּܹ¹±ØÐëÄܹ»ÔÚÏû·ÑÐÔµç×Ó²úÆ·×÷ҵƽ̨ÉÏÔËÐУ¬ÏÖÔÚÎÒÃÇÆÕ±éÈÏʶµÄPDA¡¢ÊÖ»ú»òÊÇÐÅÏ¢¼Òµç(IA)£¬¶¼ÊÇÊôÓÚÕâÖּܹ¹µÄÄ¿±êƽ̨¡£½Ó×Å£¬Green TeamÔÚ1992ÄêµÄ9ÔÂ3ºÅ£¬·¢±íÁËÒ»¿îÓÉJava ¼¼ÊõÖ®¸¸ James GoslingËùÁì¾üÑз¢£¬Ãû½ÐStar Seven(*7)µÄ»úÆ÷£¬Ñз¢³öÒ»²¿½»»¥Ê½µÄÕÆÉÏÐͼÒÓÃÓéÀÖ×°Ö㬿É͸¹ýʹÓö¯»´¥ÅöʽÆÁÄ»µÄʹÓÃÕß½Ó¿ÚÀ´¿ØÖÆÆäËüµç×ÓÉ豸¡£
¾¹ýÁË13ÄêµÄʱ¼ä£¬ÏÖÔÚÎÒÃǼìÊÓJ2MEµÄ·¢Õ¹ÀúÊ·£¬ÎÒÃÇ¿ÉÒÔ·¢ÏÖ£¬ËäÈ»ÔÚ1999Ä꣬Java±»Çиî³ÉJ2SE¡¢J2ME¡¢J2EE£¬ËùÒÔÓÐÁËJ2MEÕâ¸öÃû´ÊµÄ³öÏÖ¡£µ«ÊÇJava²¢·Ç1999Ä꿪ʼ²Å¿ªÊ¼·¢Õ¹Ç¶ÈëʽϵͳÉϵÄÓ¦Óá£Æäʵ£¬Java±¾À´¾ÍÊÇΪÁËǶÈëʽϵͳ¶ø·¢Õ¹µÄÒ»Öּܹ¹¡£¼´Ê¹Ä¿Ç°´ó¼Ò¶à°ë½«JavaµÄÓ¦Óþ۽¹ÓÚÆóÒµÉϵÄJ2EEÓ¦Óᣵ«ÊÇÑϸñÀ´Ëµ£¬J2ME²ÅÊÇJavaÕæÕý¡°»Ø¹é±¾ÐÄ¡±µÄÁìÓò¡£
°ë·ɱ³öµÄPersonal Java
Personal JavaÊÇÕý¹æJava°æ±¾µÄÒ»¸ö·ÖÖ§£¬ÆäÄ¿µÄÔÚÓÚÄܹ»ÈÃPDA»ò¸ß½×ÊÖ»úÖ´ÐÐJava³ÌÐò£¬Ä¿Ç°ÔÚWindows Mobile»òSymbian OS(½öÏÞ²ÉÓÃUIQ»òNokia Series 80µÄÐж¯µç»°)ƽ̨É϶¼¿ÉÒÔ¿ª·¢Personal JavaÓ¦ÓóÌÐò¡£
ËäÈ»´ÓJava 1.0·¢±íÖ®ºó£¬Java¾Í±»¹ã·ºµØÊ¹ÓÃÔÚ×ÀÉÏÐÍÓ¦ÓóÌÐòÒÔ¼°AppletµÄ¿ª·¢ÉÏ£¬µ«ÊÇ£¬´ÓJava 1.1¿ªÊ¼£¬JavaÓֻص½ÁËËüÒ»¿ªÊ¼µÄÀÏ·-Ò²¾ÍÊÇǶÈëʽϵͳ·½ÃæµÄÓ¦Óã¬ÔÚµ±Ê±Sun Microsystems·¢±íÁËEmbedded JavaÓëPersonal Java£¨Ò²ÓÐÈ˼ò³ÆÎªPJava£©ÕâÁ½Ïî¹æ¸ñ¡£Personal JavaµÄ¹æ¸ñÊÇ´ÓJava 1.1Ö®ÖÐËù·ÖÖ§³öÀ´£¬Òò´ËPersonal JavaµÄ¹æ¸ñÊǸù¾ÝJava 1.1µÄ¹æ¸ñ¶øÖƶ¨µÄ£¬µ«ÊDz¢·ÇJava 1.1µÄÈ«²¿¹æ¸ñ¶¼°üº¬½øÀ´£¬ËùÒÔPersonal JavaÖ»ÄÜËãÊÇJava 1.1ƽ̨µÄ×Ó¼¯ºÏ¡£
Personal JavaÌØ±ðÊʺÏÓÃÔÚ¾ßÓзḻͼÐÎÏÔʾÄÜÁ¦µÄÏû·ÑÐÔµç×Ó²úÆ·ÉÏÃæ£¬ÓÚÊÇÎÒÃÇ¿ÉÒÔ·¢ÏÖSun MicrosystemsÍøÕ¾É϶ÔÓÚPersonal JavaµÄ²Î¿¼Êµ×÷Êǽ¨Á¢ÔÚWindows Mobile²úÆ·(¹ýÈ¥½Ð×öPocket PC)ÉÏÍ·µÄ¡£
ÔÚ1999Ä꣬һ°ãPDA»òÊÖ»úµÄÄÜÁ¦£¬ÀëPersonal JavaËùÐèÒªµÄÓ²¼þÌõ¼þÈÔÓкܴóµÄÒ»¶Î²î¾à£¬Òò´ËPersonal Java²¢²»ÊÇÒ»¸öºÜ³É¹¦µÄ²úÆ·¡£Òò´ËSun MicrosystemsÔÚ´Ëʱ½«JavaÇø·Ö³ÉJ2SE¡¢J2EE¡¢J2MEÕâÈý¿é£¬Ï£Íû¿ÉÒÔÖØÐÂËÜÔìÕû¸ö¼Ü¹¹£¬ÓÈÆäÊÇJ2ME£¬Ï£ÍûJava¿ÉÒÔÔÚǶÈëʽϵͳµÄÁìÓòÓÐËù·¢Õ¹¡£
J2ME´ÓºÎ¶øÀ´?
̸µ½J2ME£¬´ó¼Ò¾Í»áÁªÏëµ½KVMÕâ¸öÃû´Ê£¬ KVMµÄÉè¼ÆÕßAntero Taivalsaari£¬×îÔçÔÚSun Microsystems²ÎÓëSpotless Project£¬Õâ¸öÏîÄ¿²ÅÊÇJ2MEµÄ×îÔçÆðÔ´¡£ÓÉÓÚAntero TaivalsaariÔø¾ÔÚÊÀ½çÖªÃûµçÐÅÉè±¸ÖÆÔìÉ̹¤×÷£¬ËùÒÔËûÓÐÁËÔÚÊÖ»úÉÏ¿ª·¢JVMµÄ¸ÅÄºóÀ´µÃµ½¹«Ë¾Ö§³Ö£¬¾ÍÓÐÁ˸÷λËùÖªµÄKVM(K Virtual Machine)¡£
×îÔçÓ¦ÓÃKVMµÄ²úÆ·£¬¾ÍÊÇÒ»¸ö¿ÉÒÔÔÚPalm OSÉÏÖ´ÐеÄKJava¡£KJava²¢²»ËãÊÇÒ»¸öÕýʽ²úÆ·£¬Ö»ÄÜËãÊÇÒ»¸ö¸ÅÄî²âÊÔ²úÆ·¡£¿ª·¢ÈËÔ±»á¿ª·¢ÃûΪSpotletµÄÓ¦ÓóÌÐò£¬Í¸¹ý¹¤¾ßºÍKVMµÄ¸¨Öú£¬Ó¦ÓóÌÐò¾Í¿ÉÒÔÔÚPDAÉÏÖ´ÐС£ËäÈ»KJavaÔçÒѳÉΪ¹ýȥʽ£¬µ«ÊÇÈÔÓеçÐų§ÉÌʹÓÃÕâ¸öÃû´Ê£¬×÷ΪÊÖ»úÉÏJavaƽ̨µÄÃû³Æ£¬²»¹ý£¬ÒѾ²»ÊÇÕæÕýµÄKJavaÁË¡£ÓÐÁËKJavaµÄ·¢Õ¹¾Ñ飬Sun×ÅÊÖÉè¼ÆJ2MEµÄ¼Ü¹¹£¬ÈÃJ2ME¿ÉÒÔÓ¦¸¶Î´À´Ç¶ÈëʽϵͳµÄ·¢Õ¹¡£
J2MEÕûÌå¼Ü¹¹
J2ME×î»ù±¾µÄ¹æ·¶Öƶ¨ÔÚJSR-68(Java¹æ¸ñ±àºÅµÚ68ºÅ)£¬Ôڴ˹æ¸ñÀïÍ·¶¨ÒåÁËJ2MEµÄ¼¼Êõ¼Ü¹¹¡£¸ù¾Ý´Ë¹æ·¶£¬J2MEÓÉÈýÖÖÀàÐ͵Ĺ淶¶ÑÕ»¶ø³É£¬·Ö±ðÊÇConfiguration¡¢ProfileÒÔ¼°Optional Packages¡£ÕâÈýÖÖÀàÐ͵Ĺ淶¶¨ÒåÓÉÆäËüµÄ¹æ·¶Ëù¶¨Òå¡£
ÔÚ×îµ×²ãµÄConfiguration¹æ·¶£¬¶¨ÒåÁËÓ²¼þËù±ØÐë¾ß±¸µÄÄÜÁ¦£¬±È·½ËµÓ²¼þÖÁÉپ߱¸¶àÉÙROM¡¢RAM£¬CPUµÄƵÂÊ×îÉÙÓ¦¸ÃÊǶàÉÙ£¬Á¬½ÓÍøÂçʱƵ¿íÖÁÉÙÒª¶à¿ì¡£Configuration¹æ¸ñÖ®Öж¨ÒåÁËÒ»×éµÍ½×µÄAPI£¬Õâ´ú±íJavaÖÁÉÙ±ØÐëÌṩµÄµÍ½×¹¦ÄÜ£¬Õâ×éµÍ½×µÄAPI¾ÍÊǺËÐÄÀà±ðº¯Êý¿âµÄ×Ó¼¯ºÏ¡£
ÔÚConfigurationÖ®ÉϵĹ淶³ÆÎªProfile¡£ProfileÕë¶Ô¸÷ÖÖ²»Í¬»úÆ÷µÄÌØÐÔ¶¨ÒåÁ˸߽׵ÄAPI£¬ÕâЩ¸ß½×µÄAPIͨ³£¶¼ÊÇÓëÆäËüƽ̨²»Ïà¹ØµÄÀ©³äÀà±ðº¯Êý¿â¡£ÕâЩ¸ß½×API¾ö¶¨Á˸ÃÖÖ»úÆ÷ÉÏJava³ÌÐòµÄ׫д·½·¨¡£±È·½ËµÐж¯Í¨Ñ¶×°ÖÃ(ÊÖ»ú¡¢PDAµÈ)ÕâÀàÐÍ×°ÖÃÉÏJava³ÌÐòµÄ׫д·½Ê½£¬ÒÔ¼°Äܹ»µ÷ÓõÄAPI£¬¶¼¶¨ÒåÔÚMIDP(Mobile Information Device Profile)Ö®ÖС£
¾ÍËãÊÇͬÀàÐ͵Ä×°Öã¬ÓÐЩ¹¦ÄÜÒ²²»Ò»¶¨¾ß±¸(ÓÐЩ³§É̵ĻúÆ÷¿ÉÄÜÓУ¬ÓÐЩ³§É̵ĻúÆ÷¿ÉÄÜûÓУ¬ÀýÈçÊÖ»úÉϵÄÕÕÏà»ú¡¢ºÍÏÒÁåÉùµÈ)£¬ÕâЩ¹¦ÄܾͶ¨ÒåÔÚ¡°³§ÉÌÑ¡ÔñÐÔʵÏÖÌ×¼þ(Optional Package)¡±Ö®ÖУ¬±È·½Ëµ£¬Óеij§ÉÌ»áÌṩ¼òµ¥µÄÊý¾Ý¿â¹ÜÀíϵͳ(DBMS)ÔÚ¸Ã×°ÖÃÉÏ£¬ÄÇôËûÃǾͻáʵÏÖJDBC Optional Package¡£²»ÌṩÊý¾Ý¿â¹ÜÀíϵͳµÄ³§É̾Ͳ»ÐèҪʵÏÖJDBC Optional Package¡£ËùÒÔ³Æ×÷³§ÉÌÑ¡ÔñÐÔʵÏÖÌ×¼þ¡£
ËùνµÄ³§ÉÌÑ¡ÔñÐÔʵÏÖÌ×¼þ£¬Òâ˼ÊÇ˵£¬ÕâÊÇÒ»×éºÍÆäËü¹æ¸ñ(»òAPI)ûÓÐÈκÎÏàÒÀÐÔµÄÀà±ðº¯Êý¿â£¬Èç¹û³§ÉÌÔ¸ÒâÌṩÕâÑùµÄ¹¦Äܸø³ÌÐòÉè¼ÆÊ¦(ͨ³£ÊÇÒòΪӲ¼þ¾ßÓгä·ÖµÄÄÜÁ¦¿ÉÒÔÍê³É¹æ¸ñÖ®ÖÐËùÖÆ¶¨µÄ¹¦ÄÜ)£¬¾Í»á½«Õâ×éÀà±ðº¯Êý¿âʵÏÖ³öÀ´£¬³ÌÐòÉè¼ÆÊ¦Ò²¿ÉÒÔÀûÓÃÕâЩ¹¦ÄÜ¿ª·¢³ö¹¦Äܸü¶àµÄÓ¦ÓóÌÐò¡£
MIDP¹¤Òµ±ê×¼
ËäÈ»J2ME¼Ü¹¹ÍêÕû£¬µ«ÊÇĿǰµÄ·¢Õ¹£¬³ýÁËPersonal ProfileÖ®Í⣬×î´óµÄÓ¦ÓÃÔÚÓڼܹ¹ÔÚCLDCÖ®ÉϵÄMIDP¡£Ä¿Ç°ËùÓбêʾ¿ÉÒÔÖ§³ÖJavaµÄÊÖ»ú£¬ËùÖ§³ÖµÄ¶¼ÊÇMIDP£¬¼¸ºõËùÓеÄÎÞÏßͨѶ³§É̽ԲÉÓÃMIDP×÷ΪÆä¿ª·¢³ÌÐòµÄ±ê×¼¡£
ÔÚMIDP 1.0µÄʱ´ú£¬ÓÉÓÚ¹æ¸ñÉϱ¾ÉíµÄ¹¦Äܲ»×㣬ʹµÃÐí¶à³§É̲»µÃ²»¼ÓÈë×Ô¼º×¨ÊôµÄAPI£¬ÀýÈçÕ𶯡¢±³¹â¡¢ÉùÒôµÈÀ©³ä¹¦ÄÜ(ÀýÈç:Nokia UI API)£¬ÒÔÃÖ²¹MIDPƽ̨µÄ²»×ã¡£
µ½ÁËMIDP 2.0£¬Ôö¼ÓÁËÐí¶àÖÚËùÆÚÅεŦÄÜ£¬µ«ÊÇ£¬¼´Ê¹¹æ¸ñ¸üÇå³þÁË£¬¼´Ê¹ºÜ¶àй¦Äܶ¼ÒѾÓÉJCPÖÆ¶¨³É±ê×¼µÄOptional Packages£¬ÕâЩÎÊÌâÒÀÈ»Î޽⡣ÊÐÃæÉϵÄMIDPƽ̨ÈÔÈ»´¦ÓÚ»ìÂÒ״̬¡£¿ª·¢Õß±ØÐëÔÚÖ´ÐÐʱÆÚÕì²â¸÷ÖÖרÊôAPIºÍOptional PackageµÄ´æÔÚ£¬Õâ»áÔö¼Ó¶àÓàµÄ³ÌÐò´úÂ롣ƽ̨µÄ»ìÂÒ»áÔì³ÉÔÚij¸ö×°ÖÃÉÏ¿ÉÒÔ˳Àû°²×°¼°Ö´ÐУ¬¶øµ½ÁËÆäËü×°ÖÃʱ£¬ÓпÉÄÜÎÞ·¨Ö´ÐУ¬ÉõÖÁÓпÉÄÜÁ¬°²×°¶¼ÓÐÎÊÌ⣬ËùÒÔ¿ª·¢Õßͨ³£Òª¿ª·¢ºÃ¼¸ÖÖ°æ±¾µÄMIDPÓ¦ÓóÌÐò¹©¸÷ÖÖ³§ÅÆ¡¢¸÷ÖÖÐͺŵÄ×°ÖÃʹÓá£
ΪÁ˽â¾öÉÏÊöÎÊÌ⣬½øÒ»²½Ìá¸ßMIDPÓ¦ÓóÌÐòµÄ¿ÉÒÆÖ²ÐÔ£¬Sun MicrosystemsÒÔMIDP 2.0¹æ¸ñΪºËÐÄ£¬Éè¼ÆÁËJTWI¹æ¸ñ¡£Î´À´µÄÎÞÏßͨѶƽ̨£¬½«²»»áÖ»ÓзûºÏMIDP 2.0¹æ¸ñ£¬¶øÊDZØÐëÒª·ûºÏJTWI¹æ¸ñ¡£Õ⽫ÊÇJ2MEÈí¼þÔÚ¿ÉÒÆÖ²ÐÔÉϵÄÒ»´óÍ»ÆÆ¡£JTWI(Java Technology for Wireless Industry)ÊÇÒ»¸öͳºÏÐԵĹæ¸ñ£¬ÆäÄ¿µÄÊÇΪÁËÈ·±£MIDPÈí¼þµÄ¿ÉÒÆÖ²ÐÔ¡£ËùÒÔJTWI¹æ¸ñ³ýÁ˹淶ÎÞÏßͨѶƽ̨(ÌØ±ðÊÇÊÖ»ú)Ëù±ØÐëÖ§³ÖµÄJ2ME±ê×¼Ö®Í⣬Ҳ¶Ô¼ÈÓйæ¸ñÖÐÄ£ºý²»ÇåµÄµØ·½ÓëÒÔ¼ÓÇ¿¡£ËùÒÔпîµÄÊÖ»úΪÁ˼ÓÇ¿ÒÆÖ²ÐÔ£¬¶¼»áÖ§³ÖJTWI±ê×¼¡£JTWIÖ»ÊÇÒ»¸öͳºÏÐԵĹ淶£¬²¢Ã»ÓÐÖÆ¶¨ÈκÎй¦ÄÜ£¬Ä¿µÄÖ»ÊÇҪͳһµ±Ç°Æ½Ì¨»ìÂÒµÄÏÖÏó£¬ÈÃJ2MEÓ¦ÓóÌÐò¸ü¾ß¿ÉÒÆÖ²ÐÔ¡£JTWIÖ÷Òª·Ö³É¼¸¸ö²¿·Ö:
1 .¹æ¶¨Æ½Ì¨±ØÐëÖ§³ÖµÄAPI¡£
2 .ͳһµÄÓ¦ÓóÌÐòÖ´Ðл·¾³¡£
3 .¼ÈÓйæ¸ñµÄÀíÇåÓë¼ÓÇ¿¡£
Ôڹ涨ƽ̨±ØÐëÖ§³ÖµÄAPIµÄ²¿·Ö£¬JTWI¹æ¶¨ÖÁÉÙ±ØÐëÖ§³ÖCLDC 1.0¡¢MIDP 2.0ÒÔ¼°WMA 1.1:
ËùÒÔ£¬Ö»Òª³§ÉÌÐû³ÆÖ§³ÖJTWIƽ̨£¬ÄÇô´ú±íÒ»¶¨Ö§³ÖCLDC 1.0¡¢MIDP 2.0ÒÔ¼°WMA 1.1¹æ¸ñÖ®ÖеÄËùÓй¦ÄÜ¡£ÁíÍ⣬³§ÉÌ¿ÉÒÔ¸ù¾Ý×°Öñ¾ÉíµÄÄÜÁ¦£¬½«CLDC 1.0ÌáÉý³ÉCLDC 1.1£¬¿ÉÒÔ¼ÓÈëMMAPI 1.1¡£Òò´Ëʵ¼ÊÉÏJTWIƽ̨»áÓÐһϼ¸ÖÖ×éºÏ·½Ê½:
ÆäÖУ¬CLDC 1.1 + MIDP 2.0 + WMA 1.1 + MMAPI 1.1ÊÇ×îÍêÕû¡¢¹¦ÄÜ×îǿƽ̨¡£
ÔÚͳһӦÓóÌÐòÖ´Ðл·¾³·½Ã棬¹ýÈ¥ÈÃJ2MEÓ¦ÓóÌÐò¿ª·¢Õß×îΪͷ´óµÄÎÊÌâÓÐÒÔϼ¸Ïî:
¡ñ Ó¦ÓóÌÐòµÄ´óС¿ÉÒÔ¶à´ó?
¡ñ Ö´ÐÐʱÆÚµÄÄÚ´æÓжàÉÙ¿ÉÒÔʹÓÃ?
¡ñ ÓжàÉÙÄÚ´æ¿Õ¼ä¿ÉÒÔ×÷ΪÓÀ¾Ã´¢´æÖ®ÓÃ?
ÓÉÓڹ淶ÖжÔÓÚJ2MEÓ¦ÓóÌÐò±¾ÉíµÄ´óСºÍÖ´Ðл·¾³Ã»ÓкÜÏêϸµØ¹æ·¶£¬Ê¹µÃÿ¼Ò³§É̶¼ÓÐ×Ô¼ºµÄ¹æ·¶£¬±È·½ËµNokiaÏÞÖÆÓ¦ÓóÌÐò×î´óÖ»ÄÜ30 KB£¬MotorolaÔò¿ÉÒÔÖ§³Ö50 KBÒÔÉϵÄÓ¦ÓóÌÐò¡£ÕâЩ¹æ·¶¶¼ÑÏÖØµØÀ§ÈÅ×Å¿ª·¢ÈËÔ±¡£ÕâЩÎÊÌâÔÚJTWIÖ®Öж¼»ñµÃ¸ÄÉÆ¡£
JTWI¶¨ÒåÁËÓ¦ÓóÌÐòµÄ±ê×¼´óС(Standard-size Application)¡£JTWI¹æ¶¨£¬¿ÉÒÔÖ´ÐÐJ2MEÓ¦ÓóÌÐòµÄÐж¯Í¨Ñ¶×°Öã¬ÖÁÉÙ¿ÉÒÔÈÝÐí´óСΪ64 KBÒÔÉϵijÌÐòÖ÷Ìå(JARÎļþ)¡¢5 KBÒÔÉϵÄÓ¦ÓóÌÐòÃèÊöÎļþ(JADÎļþ)¡¢ÒÔ¼°30 KBÒÔÉϵÄÓÀÐø´¢´æ¿Õ¼ä¡¢Ö´ÐÐʱÆÚµÄÄÚ´æ(Heap Memory)Ϊ256 KB¡£ÉÏÊö´óСֻÊǵ×Ïߣ¬³§ÉÌ¿ÉÒÔÊÓ×°ÖõÄʵ¼ÊÄÜÁ¦Ö§³Ö¸ü´óµÄÄÚ´æ¿Õ¼ä¡£±ê×¼Ó¦ÓóÌÐò´óС(Standard-size Application)½«³ÉΪһ¸ö¼ÆËãÓõĵ¥Î»£¬¾ÙÀýÀ´Ëµ£¬³§ÉÌ»á˵Õâ¸ö×°ÖÿÉÒÔ°²×°20¸ö±ê×¼Ó¦ÓóÌÐò£¬¿ª·¢ÕßËù׫дµÄ³ÌÐò¿ÉÒÔ˵Õâ¸ö³ÌÐòÐèÒªÕ¼µô3¸ö±ê×¼Ó¦ÓóÌÐòµÄ¿Õ¼ä¡£
ÖÁÓÚ¶Ô¼ÈÓйæ¸ñµÄÀíÇåÓë¼ÓÇ¿µÄ²¿·Ö£¬ÎÒÃǽ«ÔÚÍùºóÕ½Úһһ˵Ã÷¡£×îÖØÒªµÄÒ»µãÊÇ£¬JTWI¹æ¶¨£¬¸Ã×°ÖÃËùÖ§³ÖµÄÈκÎýÌå¸ñʽ(ÀýÈçͼƬ¡¢ÉùÒô¡¢Ó°ÏñµÈ)¶¼Ó¦¸ÃÄܹ»Ê¹ÓÃHTTP 1.1»ñÈ¡£¬Ò²¾ÍÊÇ˵£¬´æÈ¡ÕâЩýÌåʱËùʹÓõÄURL¶¼±ØÐëÄܹ»½ÓÊÜhttp×÷Ϊ´æÈ¡µÄͨѶÐÒé¡£
Java¿ª·¢»·¾³µÄ
¹ýÈ¥¡¢ÏÖÔںͽ«À´
ÎÄ/EclipseCN
1995Äê3ÔÂ23ÈÕ£¬San Jose Mercury NewsµÇ³öһƪÌâΪ¡°Why Sun thinks Hot Java will give you a lift¡±µÄÎÄÕ£¬ÔÚÄÇÆªÎÄÕÂÀïÔ¤ÑÔJava¼¼Êõ½«ÊÇÏÂÒ»¸öÖØ´óʼþ£¬Õâ¸öÔ¤ÑÔÏÖÔÚ¿´À´²¢²»½ö½öÊÇÉ̼ҵÄÐû´«¼¿Á©£¬ËäÈ»ÎÄÕÂÊǵ±Ê±SunµÄ¹«¹Ø¾Àí Lisa Poulson°²ÅÅ׫дµÄ¡£´ÓÊÀÈËÖªµÀJavaÄÇÒ»¿ÌÆðµ½ÏÖÔÚ£¬ËãÆðÀ´ÒѾ¹ýÈ¥ÕûÕûÊ®Ä꣬»Ø¹Ë¹ýÈ¥µÄÊ®ÄêÖµµÃ×ܽáµÄ¶«Î÷ÓÐÐí¶à£¬µ«ÔÚÕâÀï±ÊÕßÖ»Ïë¾ÍJava ¿ª·¢»·¾³Ì¸Ð©¸öÈ˵ÄÏë·¨ÓëÅóÓÑÃǽ»Á÷һϡ£
ÏÖÔÚµÄÈí¼þ¿ª·¢ÈËÔ±ÔÚÕû¸öÈí¼þµÄ¿ª·¢ÉúÃüÖÜÆÚÀҲÐí»á¸ù¾ÝÐèҪʹÓø÷ʽ¸÷ÑùµÄ¿ª·¢¹¤¾ßÀ´Íê³ÉÏà¶Ô¸´ÔӵĿª·¢ÈÎÎñ£¬¶øÔÚ¼¸Ê®ÄêÒÔǰ£¬ÈËÃÇ»¹Ö»ÊÇʹÓÃÎı¾±à¼Æ÷¡¢±àÒëÆ÷ºÍDebugger½øÐпª·¢£¬¶ÔÓÚÕâ¸ö½×¶ÎµÄ¿ª·¢»·¾³ÈËÃdzÆÖ®ÎªCLEs(Command Line Environments)¡£ ¶øµ±ÈËÃÇ·¢ÏÖÈç¹û½«ÄÇЩµ¥¶À·Ö¿ªµÄ¿ª·¢¹¤¾ß¼¯³ÉÆðÀ´¾Í¿ÉÒÔÓÐЧµÄÌá¸ß¿ª·¢Ð§ÂÊʱ£¬IDEs(Integrated Development Environments)¾Í³öÏÖÁË¡£JavaµÄ³öÏÖ¾¡¹ÜÖ»ÓÐÊ®Ä꣬µ«Æä¿ª·¢»·¾³Ò²´óÖÁ¾ÀúÁË´ÓCLEsµ½IDEsÔÙµ½XDEsÕâÈý¸ö½×¶Î£¬ÏÖÔÚ¼´½«½øÈëCDEs½×¶Î¡£ÔÚÉÏÊöJava¿ª·¢»·¾³·¢Õ¹¹ý³ÌÖУ¬ÓÐÐí¶àÖµµÃÎÒÃÇ´ó¼Ò¹Ø×¢µÄµØ·½¡£
Java¿ª·¢»·¾³µÄÀúÊ·»Ø¹Ë
×ݹ۹ýȥʮÄêJava¿ª·¢»·¾³µÄ·¢Õ¹£¬´óÖ¿ÉÒÔ´ÖÂԵĻ®·ÖΪÈçϼ¸¸ö½×¶Î:
¡ñ 1995£¬ÃüÁîÐпª·¢»·¾³CLEs
¡ñ 1996-2000£¬¼¯³É¿ª·¢»·¾³IDEs
¡ñ 2001-2004£¬À©Õ¹¿ª·¢»·¾³XDEs
¡ñ 2005ÖÁ½ñ£¬Ðͬ¿ª·¢»·¾³CDEs
1995Ä꣬²»Æ½·²µÄÒ»Ä꣬ÕâÒ»ÄêJava »ñµÃÁ˳ɹ¦¡£¿ÉÁîÈËÞÏÞεÄÊÇÔÚ1995Ä겢ûÓÐÒ»¸öÁîÈËÂúÒâµÄJava¿ª·¢»·¾³£¬¿ª·¢ÈËÔ±ÔÚ½øÐÐJava±à³Ìʱ£¬´ó¶àʹÓÃÎı¾±à¼Æ÷±à¼Ô´³ÌÐò£¬È»ºóÔÙʹÓÃÃüÁîÐеķ½Ê½½øÐбàÒë´¦Àí¡£ÄÇʱµÄJava¿ª·¢»·¾³»¹´¦ÓÚCLEsʱ´ú£¬¿ª·¢Ð§Âʷdz£µÍ£¬ÕâԤʾ×ÅÔÚJava¿ª·¢¹¤¾ßÉÏ»áÓÐÒ»·¬¼¤ÁҵľºÕù¡£
ÓÐÈ˳Æ1996ÄêΪ»¥ÁªÍøÄ꣬ÓÐÈËÈ´³ÆÖ®ÎªJavaÄ꣬»¹ÓÐÈ˳ÆÖ®ÎªWeb¿ª·¢Ä꣬µ«²»ÂÛÈçºÎ³Æºô1996Ä꣬Ëü¶¼·´Ó³ÁËÒ»¸öÊÂʵ£ºBill Joy½«JavaÓ뻥ÁªÍøÏà½áºÏµÄ²ßÂÔÈ¡µÃÁ˳ɹ¦¡£ÕâÒ»ÄêµÄ9ÔÂSunÍÆ³öÁËÆäJava¿ª·¢»·¾³-Java WorkShop£¬ÕâÊÇÒ»¿î»ùÓÚä¯ÀÀÆ÷µÄJava¿ª·¢¹¤¾ß£¬µ«ÓÉÓÚµ±Ê± JavaÔÚÐí¶à·½Ã滹²»³ÉÊ죬ËùÒÔʵ¼ÊÉÏJava WorkShop²¢²»³É¹¦£¬Í¬Äê·¢²¼µÄSymantec Visual CafeÓÉÓÚ»¹ÊDzÉÓÃC/C++ÓïÑÔ½øÐпª·¢£¬ËùÒÔÐÔÄÜÓë³ÉÊì¶ÈÉϾͱÈWorkShopºÃµÃ¶à¡£Ìáµ½Visual Cafe¾Í²»Äܲ»ÌáEugene Wang£¬ÒòΪEugene Wang³£³£ÊÇÓë¼ÆËã»ú¼äµýÕâ¸ö´Êͬʱ³öÏÖµÄÈËÎÓÐÈËÉõÖÁ½²µ±Ê±SymantecµÄÀϰåGordon EubanksÓëEugene WangǩԼʱ£¬Ò²Í¬Ê±Ç©ÏÂÁ˼àÓüÀïµÄÒ»¸öµ¥Ôª¡£Visual Cafe¾ÍÊÇÓÉEugene Wang½øÐÐÖ÷Òª²ß»®µÄ£¬ËüÊÇÔÚͬһÄê·¢²¼µÄJava¿ª·¢»·¾³ÖУ¬Î¨Ò»½â¾öÁËÓëÊý¾Ý¿âÁ¬½ÓÎÊÌâµÄ¿ª·¢»·¾³£¬´øÓÐÒ»Ì׿ÉÒÔÓëÊý¾Ý¿âÏàÁ¬½ÓµÄ×é¼þ£¬ÎÞÐèÌ«¶à±à³ÌʹÓÃÍÏ×§µÄ·½Ê½¾Í¿ÉÍê³É´ó²¿·Ö¹¤×÷£¬ÕâÒ»ÓŵãʹµÃVisual CafeÊܵ½ÁËJava¿ª·¢ÈËÔ±µÄ»¶Ó¡£ÕâÒ»ÄêIBMÊÕ¹ºÁËOTI¹«Ë¾£¬´Ó¶øµÃµ½ÁËDave ThomasµÄµÜ×ÓJohn Duimovich¡¢Dave Thomson¡¢Mike WilsonµÈÒ»´óÅúÈí¼þ¾«Ó¢£¬ÕâÖ®Öл¹°üÀ¨¡°Éú»îÔÚ¼¼Êõµ¶·æÉϵĿª·¢Õß¡±Brian Barry¡£
1997Ä꣬ÓÉÓÚ΢Èí¢¶Ï°¸£¬Ê¹µÃ΢ÈíÔÚJava¿ª·¢»·¾³ÉϵÄŬÁ¦Êܵ½ÁËÏÞÖÆ£¬Visual CafeÓÉÓÚ½çÃæÖ±¹ÛÒ×Ó㬿ÉÒÔºÜÈÝÒ×µØÁ¬½Ó¸÷ÖÖÊý¾ÝÔ´µÈ¹¦ÄÜÔÙ´ÎÊܵ½¿ª·¢ÈËÔ±µÄ»¶Ó¡£ÕâÒ»ÄêIBM·¢²¼VisualAge for Java¡£VisualAge for JavaÊÇÃæÏò´úÂë¿âµÄ¿ª·¢»·¾³£¬ËüÌṩ´úÂë¿âºÍÏîÄ¿¹ÜÀíÒÔ±ãÓÚ¿ª·¢ÍŶÓÔÚ C/S»·¾³Ï½øÐÐÏîÄ¿¿ª·¢¡£µ«ÓÉÓÚ´ó¶àÊýJava¿ª·¢ÈËÔ±±È½ÏÊìÏ¤ÃæÏòÎļþµÄ¿ª·¢»·¾³£¬»¹²»Ì«Ï°¹ßÃæÏò´úÂë¿âµÄ¿ª·¢£¬ÔÙ¼ÓÉÏVisalAge for Java¶Ôϵͳ×ÊÔ´µÄÒªÇó±È½Ï¸ßµÈÒòËØ£¬Ê¹µÃVisualAge for JavaÒ»¿ªÊ¼Î´±»Java¿ª·¢ÈËÔ±ËùÈϿɡ£
1998ÄêÖÁ2000Äê±È½Ï³É¹¦µÄJava¿ª·¢»·¾³ÊÇJBuilder£¬ÕâÊÇÓÉÓÚBorland½ÏºÃµÄ°ÑÎÕס J2SE¡¢J2EEºÍJ2ME·¢²¼ºó£¬Java¼¼ÊõÉý¼¶µÄʱ»ú£¬È«ÃæÖ§³ÖJava1.1ºÍJava1.2¿ª·¢Æ½Ì¨£¬Ëü»¹ÌṩÁ˶àÖÖ¹¤¾ß·½±ãÓû§´Ó¾ÉµÄÆ½Ì¨Ç¨ÒÆµ½ÐµÄJavaƽ̨¡£JBuilder±¾Éí80%ÊÇ»ùÓÚJDK1.2½øÐпª·¢µÄ£¬ËüÖ§³ÖJavaBeans, Enterprise JavaBeans, JDBCµÈ·½ÃæµÄÓ¦Óÿª·¢£¬¿ÉÒÔÁ¬½Ó¶àÖÖ¹ØÏµÊý¾Ý¿â¡£ÎªÖ§³Ö·Ö²¼Ê½Ó¦Óÿª·¢£¬JBuilder»¹¼¯³ÉÁË VisiBroker ORB¡¢JSP server¡¢Êý¾Ý¿âºÍEJB AppServer£¬²¢ÌṩOpen Tools API±ãÓÚµÚÈý·½¹¤¾ß¼¯³É¡£ÉÏÊöÖÖÖÖµÄÓŵãʹµÃJBuilderÒ»¾Ù³¬Ô½Visual Cafe£¬³ÉΪµ±Ê±×îÊÜ»¶ÓµÄJava¿ª·¢»·¾³¡£ÔÚÖÚ¶àJava¿ª·¢»·¾³ÖУ¬1999ÄêIBM·¢²¼µÄVisualAge for Java Micro EditionÊDZȽÏÓÐÌØÉ«µÄ¿ª·¢»·¾³£¬ËüÊÇÓÉErich GammaºÍÓëErich GammaÓС°½¹²»ÀëÃÏ¡¢Ãϲ»Àë½¹¡±Ö®³ÆµÄJohn Wiegand¹²Í¬½øÐÐÉè¼ÆµÄ£¬²ÉÓÃÁËJava À©Õ¹»úÖÆ£¬²¢¼¯³ÉÁËJUnit²âÊÔ¿ò¼Ü£¬Æäµ±Ê±Ëù²ÉÓõļܹ¹ÉîÉîµØÓ°ÏìÁ˺óÀ´Eclipse1.0Ëù²ÉÓõļܹ¹¡£Í¬Ê±£¬Í¨¹ýVisualAge for Java Micro EditionµÄ¿ª·¢£¬ÄÇЩÀ´×Ô¡°Î´À´ÊÀ½ç¡±(SmalltalkÃÇ×ÜÈÏΪËûÃÇÀ´×Ô¼ÆËã»úµÄδÀ´ÊÀ½ç)µÄÈí¼þ¾«Ó¢ÃÇ£¬È«Ãæ³¹µ×µØ¶ÔJava¼¼Êõ½øÐÐÁËÆÀ¹À£¬µÃ³öÁËÐí¶à½áÂÛÐԵĶ«Î÷£¬ÕâÖ®ÖаüÀ¨ÏÖÔÚÄֵ÷зÐÑïÑïµÄSwingºÍSWT¶Ô±È¡£´ËÍ⣬Sun½«ÆäÊÕ¹ºµÄNetBeans±ä³ÉÁË¿ªÔ´µÄJava IDEÒ²ÊÇÒ»¼þ²»´ó²»Ð¡µÄÊÂÇé¡£
×ݹÛ1996ÄêÖÁ2000ÄêÕâÎåÄêʱ¼äÀï£¬Ëæ×ÅJava¼°ÆäÏà¹Ø¿ª·¢Ó¦Óõķ¢Õ¹£¬Java¿ª·¢»·¾³Ò²²»¶ÏµÄÍêÉÆ£¬´ÓCLEs½øÈëµ½IDEs½×¶Î¡£ÎªÁËÌá¸ßJava¿ª·¢ÈËÔ±µÄ¿ª·¢Ð§ÂÊ£¬Java¿ª·¢»·¾³Ö÷Òª´ÓÁ½¸ö·½Ãæ½øÐиĽøÓëÌá¸ß¡£Ò»·½ÃæÊÇÌá¸ß¼¯³ÉÔÚJava IDEsµ±Öпª·¢¹¤¾ßµÄÐÔÄܺÍÒ×ÓÃÐÔ£¬ÁíÒ»·½ÃæÊǽ«Java¿ª·¢»·¾³¾¡¿ÉÄܵĸ²¸Çµ½Õû¸öÈí¼þµÄ¿ª·¢ÉúÃüÖÜÆÚ¡£Ëæ×Å»ùÓÚWEB£¬²ÉÓÃN-²ã½á¹¹µÄÓ¦Óÿª·¢³ÉΪJava¿ª·¢ÈËÔ±Ö÷Òª´ÓʵĿª·¢ÈÎÎñ£¬Java¿ª·¢»·¾³ÐèÒªÖ§³ÖÔ½À´Ô½¶àµÄ¼¼Êõ£¬±ÈÈç:XML¡¢JSP¡¢EJBºÍCORBAµÈ£¬Õâ¾ÍÔì³ÉÁËJava IDEsµÄ¹æÄ£±äµÃÔ½À´Ô½´ó£¬Ðí¶àJava¿ª·¢»·¾³¶¼¼¯³ÉÁËÊý¾Ý¿â¡¢JSP ServerºÍAppServer£¬Èí¼þµÄÑо¿ÈËÔ±½«ÉÏÊöIDEs²»¶ÏÅòÕ͵ÄÏÖÏó³ÆÎª¡°IDEs´ó±¬Õ¨¡±¡£
¡°IDEs´ó±¬Õ¨¡±ÏÖÏó·¢ÉúÒÔºó£¬ÓйØJava¿ª·¢»·¾³ÊÇ×ßÉÙ¶ø¾«µÄ·¢Õ¹·½Ïò£¬»¹ÊÇ×ß´ó¶øÈ«µÄ·¢Õ¹·½Ïò¾Í³ÉÁ˹ã´óJava¿ª·¢ÈËÔ±¹Ø×¢µÄÎÊÌâ¡£2001ÄêJava¿ª·¢ÈËÔ±´ïµ½ÁË200Íò£¬³ÉΪÿ¸öÈí¼þ¹©Ó¦É̶¼ÎÞ·¨ºöÊÓµÄÁ¦Á¿£¬ÕâÒ»ÄêJetBrainsÍÆ³öÁËJava¿ª·¢»·¾³ÉÙ¶ø¾«µÄ´ú±í£º IntelliJ IDEA¡£ IntelliJ IDEAÃ÷È·µÄ±íʾֻ×ö×îºÃµÄJava´úÂë±à¼Æ÷£¬²»×öʲôÎļþ¶¼¿ÉÒÔ±àдµÄ±à¼Æ÷¡£Ëü¹Ø×¢Java¿ª·¢ÈËÔ±µÄ¹¤×÷ʵ¼Ê²¢½«ÕâЩ¹¤×÷½øÐÐÁËÓÅ»¯¡£ÓÉÓÚ¼õµôÁËһЩ¿ÉÓпÉÎ޵Ť¾ß£¬ËùÒÔ¼Û¸ñÉÏÏà¶ÔºÏÀí¹«µÀ¡£µ±ÄêIntelliJ IDEA»÷°ÜJBuilder³ÉΪ×îÊÜJava¿ª·¢ÈËÔ±»¶ÓµÄJava¿ª·¢»·¾³£¬²»¹ý2002ÄêËæ×ÅJBuilder½«´ó¶øÈ«µÄ¹¦Á¦ÔÙÌáÉýÒ»²½£¬½«UML½¨Ä£¹¤¾ß¡¢JUnit²âÊÔ¿ò¼ÜÒÔ¼°Apache StrutsµÈ¿ª·¢¹¤¾ß¼¯³É½øÀ´£¬´ó¶øÈ«µÄ·¢Õ¹·½ÏòÓÖÒ»´ÎÊܵ½Java¿ª·¢ÈËÔ±×·Åõ¡£×îÈ«»¹ÊÇ×îºÃËÆºõʹJava¿ª·¢ÈËÔ±ÔÚÑ¡ÔñJava¿ª·¢»·¾³Ê±´¦ÓÚÁ½ÄÑ×´¿ö£¬µ«Êµ¼ÊÉϵ±Eclipse 1.0·¢²¼Ê±£¬Õâ¸öÎÊÌâÒѾµÃµ½Á˳õ²½µÄ½â¾ö£¬×îºÃºÍ×îÈ«ÊÇ¿ÉÒÔ¼æ¹ËµÄ¡£
EclipseµÄ³öÏÖ²»ÊÇ´ÓÌìÉϵôÏÂÀ´µÄ£¬Ò²²»ÊÇij¸öÌì²ÅÅÄÄÔ´üÏë³öÀ´µÄ£¬ËüÊÇһȺÈí¼þ¾«Ó¢ÃǼ¯ÌåÖǻ۵Ľá¹û¡£ÔçÔÚ1998ÄêIBM¾Í´òË㿪·¢ÐÂÒ»´úµÄ¹¤¾ßƽ̨ÒԱ㽫ËüÏÖÓеĸ÷ÖÖ¿ª·¢¹¤¾ßͳһÆðÀ´£¬²¢¼õÉÙ¿ª·¢¸÷ÖÖ¹¤¾ßÊ±ÖØ¸´µÄÀͶ¯£¬Í¬Ê±Ï£ÍûÔÚÐÂµÄÆ½Ì¨ÉϽ¨Á¢ÐµÄJava¿ª·¢»·¾³¡£¾¹ýÒ»¶Îʱ¼äµÄ×¼±¸£¬ IBM¿ªÊ¼½¨Á¢ÆðÒ»¸ö¿ª·¢ÍŶӣ¬ÈËÔ±¹¹³ÉÖ÷ÒªÀ´×ÔVisualAge for Java Micro EditionºÍVisualAge for JavaÁ½¸öÏîÄ¿µÄ¿ª·¢ÈËÔ±£¬Ñ¡ÔñµÄ±ê×¼ÊǹýÈ¥10ÄêÖÁÉÙ¿ª·¢¹ý5µ½6¸öIDE¡£´ËÍ⣬IBM»¹ÁªºÏÁË9¼Ò¹«Ë¾¹²Í¬³ÉÁ¢ÁËÒ»¸ö¿ªÔ´×éÖ¯Eclipse»ù½ð»á£¬½«EclipseÌṩ¸ø¿ª·¢ÈËԱʹÓ㬲¢ÔÚ¿ªÔ´ÉçÇøµÄ°ïÖúϽøÒ»²½ÍêÉÆEclipse±¾Éí¡£EclipseÔÚ×î³õÉè¼ÆÊ±£¬²å¼þÄ£ÐÍÊǾ²Ì¬µÄ£¬²»ÄÜʵÏÖ²å¼þµÄ¼´²å¼´Óù¦ÄÜ£¬¼´±ãÊÇ´óÊÜ»¶ÓµÄEclipse 2.1Ò²»¹ÊǾ²Ì¬µÄ¡£ËùÒÔµ½2004Äê·¢²¼Eclipse 3.0ʱ£¬Eclipse½øÐÐÁËÖØ´ó¸Ä½ø£¬²ÉÓÃOSGiµÄ²å¼þÄ£ÐÍ£¬³õ²½ÊµÏÖÁ˲å¼þµÄ¼´²å¼´Óù¦ÄÜ£¬ÖÁ´ËÒ»¸öÍêÃÀµÄ¡¢¿ÉÀ©Õ¹µÄ¿ª·¢»·¾³Õ¹ÏÖÔÚJava¿ª·¢ÕßÃæÇ°£¬ÕâʱJava¿ª·¢ÈËÔ±ÒѾ´ïµ½300Íò¡£
Java¿ª·¢»·¾³µÄÏÖ×´
2004ÄêEclipse 3.0µÄ·¢²¼¼«´ó´Ì¼¤ÁËEclipseÓû§µÄÔö³¤£¬¾¹ýÒ»ÄêÒÔºó£¬Java¿ª·¢ÈËÔ±ÏÖÔÚʹÓÃJava¿ª·¢»·¾³µÄ×´¿öÊÇÈçºÎµÄÄØ£¿¿´ÁËÏÂÃæµÄ±í¸ñÀïµÄÊý¾ÝÒ²Ðí¿ÉÒÔÁ˽âÒ»¸ö´óÖµÄ×´¿ö¡£
Ê×ÏÈÐèÒªÖ¸Ã÷µÄÊÇÉÏÊöµÄÊý¾Ý²¢²»Êǵ±Ç°JavaÓû§Ê¹ÓÃJava¿ª·¢»·¾³µÄ׼ȷ·´Ó³£¬µ«ÎÒÃÇ¿ÉÒÔ´ÓÖÐÁ˽âÒ»¸ö´óÖµÄ×´¿ö¡£ÏÖÔÚµÄJava»·¾³¿ÉÒÔ·ÖΪÈý¸ö¼¯ÍÅ£¬µÚÒ»¼¯ÍÅÊÇEclispeËü´óÔ¼Õ¼¾Ý1/3µÄ·Ý¶î£¬µÚ¶þ¼¯ÍÅÊÇ IntelliJ IDEA¡¢NetBeans ºÍJBuilderÕ¼¾ÝÁíÍâ1/3µÄ·Ý¶î£¬Ï໥֮¼äÆì¹ÄÏ൱£¬µÚÈý¼¯ÍÅÊÇÒÔJDeveloperºÍWSADΪ´ú±íµÄÊ®¼¸ÖÖJava¿ª·¢»·¾³Õ¼¾ÝÊ£Ï嵀 1/3·Ý¶î£¬µ«Ã¿ÖÖ¿ª·¢»·¾³Õ¼×ܷݶîµÄ±ÈÖØ²»³¬¹ý5%¡£ÎÒÃÇ¿¼²ìEclipse¡¢intelliJ IDEA¡¢NetBeans ºÍJBuilderÕâЩÖ÷Á÷¿ª·¢»·¾³£¬¿ÉÒÔ·¢¾õËüÃÇÓÐÒ»¸ö¹²Í¬µÄÌØµãÄǾÍÊÇ¿ÉÀ©Õ¹£¬¾¡¹ÜÔÚʵÏÖÊÖ¶ÎÉϸ÷Óв»Í¬¡£Õâ¾ÍÊÇΪʲô³ÆÏÖÔÚµÄJava¿ª·¢»·¾³ÎªXDEs(eXtended Development Environments)µÄÔÒò£¬IDEsÒѾËÀÍöÁË4Ä꣬רҵµÄ¿ª·¢ÈËÔ±ÐèÒªÁ˽âÕâ¸öÊÂʵ£¬ÒòΪXDEsÒ²¿ìËÀÁË¡£
ÓÉÓÚÊг¡µÄѹÁ¦£¬Ò»¸öÈí¼þÆóÒµ²»½öÒªÌá¸ß¿ª·¢ÈËÔ±¸öÌåµÄ¹¤×÷ЧÂÊ£¬»¹ÒªÌá¸ßÕû¸ö¿ª·¢ÍŶÓÒÔ¼°Õû¸öÆóÒµµÄ¿ª·¢Ð§ÂÊ£¬µ«ÔÚÏÖÓеÄJava¿ª·¢»·¾³XDEsÏÂÎÞ·¨ÍêÈ«×öµ½ÕâЩ£¬ËùÒÔÐÂÒ»´ú¿ª·¢»·¾³CDEs (Collaborative Development Environments)¾Í²úÉú¡£Grady BoochºÍAlan W. BrownµÄÑо¿±íÃ÷Ò»¸ö³ÌÐòÔ±Ò»Ì칤×÷ʱ¼äµÄ·ÖÅäÊÇÕâÑùµÄ£º·ÖÎöÕ¼16%(´Ó5%µ½40%²»µÈ)£¬ Éè¼ÆÕ¼14%(´Ó1%µ½40%²»µÈ)£¬±à³ÌÕ¼16%(´Ó0%µ½60%²»µÈ)£¬²âÊÔÕ¼10%£¬´òµç»°Õ¼3%£¬ÔĶÁÕ¼7%(µç×ÓÓʼþ£¬Îĵµ£¬Ô¿¯ºÍÔÓÖ¾)£¬²Î¼Ó¿ª·¢»áÒéÕ¼10%£¬Î޹صĻáÒéÕ¼7% ¡£´ÓÕâЩÊý¾Ý¿ÉÒÔ·¢ÏÖ£¬¿ª·¢ÈËÔ±ÓÃÓÚ½»Á÷µÄʱ¼äÔ¼Õ¼¹¤×÷ʱ¼äµÄ1/3£¬¿ª·¢ÈËÔ±µÄÏ໥½»Á÷·Ç³£ÖØÒª¡£¿ÉÊÇÏÖÓеÄÖ÷Á÷Java¿ª·¢»·¾³Ò»°ã½ö½«·ÖÎö¡¢Éè¼Æ¡¢±à³ÌºÍ²âÊԵȹ¤¾ß¼¯³É½øÀ´£¬È´Î´°üÀ¨ÓÃÓÚ½»Á÷µÄ¹¤¾ß£¬ÕâÏÔÈ»²»ºÏÀí¡£Òò´Ë£¬ËùνCDEs¾ÍÊǽ«ÓÃÓÚÈËÓëÈË¡¢ÈËÓëÍŶÓÒÔ¼°ÍŶÔÓÚÍŶӽøÐн»Á÷µÄ¹¤¾ß¼¯³É½øÀ´µÄ¿ª·¢»·¾³£¬±ÈÈ磬CDEs³£¾ßÓз¢Ë͵ç×ÓÓʼþ¡¢½øÐм°Ê±Í¨Ñ¶ºÍÆÁÄ»·ÖÏíµÈ¹¦ÄÜ£¬Í¨¹ýʵÏÖÎÞËðºÄ¹ý³ÌµÄ½»Á÷Ìá¸ß¿ª·¢ÍŶӵĿª·¢Ð§ÂÊ¡£
ÏÖÔÚÒѾÉÌÒµ»¯µÄCDEsÊÇCodeBeamer Collaborative Development PlatformºÍCodePro AnalytiX£¬ÉÏÊöÁ½¿îÈí¼þ¶¼ÌṩEclipseµÄ²å¼þ£¬¿ÉÒÔÓëEclipse¼¯³ÉÔÚÒ»Æð£¬Ê¹EclipseÉý¼¶³ÉΪһ¸öCDEs¡£´ó¼Ò¿Ï¶¨ÖªµÀBorlandÒѾÐû²¼¿ª·¢»ùÓÚEclipseµÄаæJBuilder-¡°Peloton¡±£¬Peloton¾ÍÊÇÒ»¸öCDEs(Collaborative Development Environments)£¬µ±ËüÃ÷ÄêÉϰëÄê·¢²¼Ê±£¬¾ÍÒâζ×ÅJava¿ª·¢»·¾³½øÈëCDEsʱ´ú£¬ÏÖÔÚJava¿ª·¢»·¾³»¹´¦ÓÚXDEsÓëCDEs½»ÌæµÄ½×¶Î¡£
Java¿ª·¢»·¾³µÄδÀ´
ÔÚ¿ÉÒÔ¿´µÃ¼ûµÄ½«À´£¬JavaµÄ¿ª·¢»·¾³»¹»áÊÇÒÔCDEsµÄÐÎʽ´æÔÚ¡£¿ªÔ´×éÖ¯»ò¿ª·¢¹¤¾ß¹©Ó¦É̽«»áŬÁ¦ÎªÈí¼þµÄ¿ª·¢´´½¨Ò»¸ö¾ø¶Ô¹â»¬µÄÆ½Ãæ (Frictionless Surface)£¬ÊµÏÖÎÞËðºÄµÄ¿ª·¢¹ý³Ì£¬ÒÔÌá¸ß¿ª·¢Ð§ÂÊ¡£ÎªÁËʵÏÖÎÞËðºÄµÄ¿ª·¢¹ý³Ì£¬JavaµÄ¿ª·¢»·¾³½«»á¹Ø×¢ÒÔϼ¸¸ö·½Ãæ:
¡ñ Æð²½½×¶Î·½Ãæ
¡ñ Ð×÷¿ª·¢·½Ãæ
¡ñ ά»¤¿ª·¢ÍŶÓÓÐЧ¹µÍ¨·½Ãæ
¡ñ ¶à¸öÈÎÎñµÄʱ¼äе÷·½Ãæ
¡ñ Ï໥ÐÉÌ·½Ãæ
¡ñ ×ÊÁÏÓÐЧÐÔ·½Ãæ
µ«ÕâÀï±ØÐë³ÐÈÏδÀ´Java¿ª·¢»·¾³ÊÇÈçºÎ¾ßÌåȥʵÏÖÎÞËðºÄµÄ¿ª·¢£¬»¹ÐèҪʱ¼ä¸øÓë´ð°¸£¬ÒòΪÏÖÔÚËùÄܲÉÓõķ½·¨Î´±ØÊÇ×îºÃµÄ£¬±ÈÈ磬ʹÓÃÃæÏòÎļþµÄ CVS½øÐÐÐͬ¿ª·¢¾ÍÓÐÐèÒª¸Ä½øµÄµØ·½¡£
×ܽá
ÂÞÀïÂÞËôÒ»´ó¶Ñ£¬¹éÄÉÆðÀ´²»¹ý¾ÍÊÇ:Ò»¸öÄ¿µÄ¡¢ÈýÖÖÊÖ¶ÎÒÔ¼°Ò»Ìõ¹æÂÉ¡£
Ò»¸öÄ¿µÄ:Ê®ÄêJava¿ª·¢»·¾³µÄÑݱ䣬ÆäÄ¿µÄ¾ÍÊÇΪÁËÌá¸ß¿ª·¢Ð§ÂÊ¡£
ÈýÖÖÊÖ¶Î:
¡ñ Ìá¸ß¼¯³ÉÔÚJava¿ª·¢»·¾³Öпª·¢¹¤¾ßµÄÐÔÄܺÍÒ×ÓÃÐÔ
¡ñ ½«Java¿ª·¢»·¾³¾¡¿ÉÄܵĸ²¸Çµ½Õû¸öÈí¼þµÄ¿ª·¢ÉúÃüÖÜÆÚ
¡ñ ¼¯³ÉÈËÓëÈË¡¢ÈËÓëÍŶÓÒÔ¼°ÍŶÔÓÚÍŶӽøÐн»Á÷µÄ¹¤¾ß
Ò»Ìõ¹æÂÉ:Èí¼þ¿ª·¢»·¾³µÄ·¢Õ¹¹ý³ÌÊÇ´ÓCLEsµ½IDEsÔÙµ½XDEs×îºó½øÈëCDEs£¬ÕâÊÇÓÉGrady Booch×ܽá³öÀ´µÄ£¬Ì×ÔÚJava¿ª·¢»·¾³ÉÏÒ²ÊÊÓá£
²Î¿¼ÎÄÏ×
¡ó Grady Booch and Alan W. Brown, "Collaborative Development Environments", Advances in Computers 59, Aug. 2003.
¡ó Li-Te Cheng,Cleidson R. B. de Souza,Susanne Hupfer,John Patterson, Steven Ross, "Building Collaboration into IDEs", ACM Queue vol. 1, no. 9 - December/January 2003-2004
¡ó J. des Rivie` res,J. Wiegand, "Eclipse: A platform for integrating development tools", IBM System Journal,Volume 43, Number 2, 2004
¡ó The Java Extension Mechanism.
¡ó Grady Booch, "History of Development Environments", January 29, 20
J2SE·¢Õ¹ÑݱäÊ·
ÎÄ/Matirx JavaÉçÇø¡¡Ñîºé²¨¡¡Íõ־˴
J2SE:»³Ì¥
JavaµÄÀúÊ·¿ÉÒÔ×·Ëݵ½1991Äê4Ô£¬Sun¹«Ë¾µÄJames GoslingÁìµ¼µÄÂÌÉ«¼Æ»®(Green Project)¿ªÊ¼×ÅÁ¦·¢Õ¹Ò»ÖÖ·Ö²¼Ê½ÏµÍ³½á¹¹£¬Ê¹ÆäÄܹ»ÔÚ¸÷ÖÖÏû·ÑÐÔµç×Ó²úÆ·ÉÏÔËÐУ¬ËûÃÇʹÓÃÁËC/C++/OakÓïÑÔ¡£ÓÉÓÚ¶àÖÖÔÒò£¬ÂÌÉ«¼Æ»®Öð½¥ÏÝÓÚÍ£ÖÍ״̬¡£
Ö±ÖÁ 1994ÄêϰëÄ꣬ÓÉÓÚInternetµÄѸÃÍ·¢Õ¹ºÍ»·ÇòÐÅÏ¢ÍøµÄ¿ìËÙÔö³¤£¬µÚÒ»¸öÈ«ÇòÐÅÏ¢ÍøÂçä¯ÀÀÆ÷Mosaicµ®ÉúÁË£»´Ëʱ£¬¹¤Òµ½ç¶ÔÊʺÏÔÚÍøÂçÒì¹¹»·¾³ÏÂʹÓõÄÓïÑÔÓÐÒ»Öַdz£¼±ÆÈµÄÐèÇó;Games Gosling¾ö¶¨¸Ä±äÂÌÉ«¼Æ»®µÄ·¢Õ¹·½Ïò£¬ËûÃǶÔOak½øÐÐÁËС¹æÄ£µÄ¸ÄÔ죬¾ÍÕâÑù£¬JavaÔÚ1995ÄêµÄ3ÔÂ23ÈÕµ®ÉúÁË£¡JavaµÄµ®Éú±êÖ¾×Å»¥ÁªÍøÊ±´úµÄ¿ªÊ¼£¬ËüÄܹ»±»Ó¦ÓÃÔÚÈ«ÇòÐÅÏ¢ÍøÂçµÄƽ̨Éϱàд»¥¶¯ÐÔ¼°Ç¿µÄApplet³ÌÐò£¬¶ø1995ÄêµÄAppletÎÞÒÉÄܸøÈËÃÇÎÞÇîµÄÊÓ¾õºÍÄÔÁ¦Õðµ´¡£
µ«Ã»ÓÐÏàÓ¦µÄ¿ª·¢¿â¶øÖ»¿¿JavaÓïÑÔÀ´½øÐпª·¢¿Ï¶¨ÊÇÀ§ÄÑÖØÖØ£¬ËùÒÔSun¹«Ë¾ÔÚ1996ÄêµÄ1ÔÂ23ÈÕ·¢²¼ÁËJDK 1.0À´°ïÖú¿ª·¢ÈËÔ±µÄ¿ª·¢¡£JDK°üÀ¨Á½´ó²¿·Ö:ÔËÐл·¾³ºÍ¿ª·¢¹¤¾ß¡£½ô¸ú×Å£¬Sun¹«Ë¾ÔÚ1997Äê2ÔÂ18ÈÕ·¢²¼ÁËJDK 1.1¡£JDK1.1Ïà¶ÔÓھɰ汾×î´óµÄ¸Ä½ø£¬ÊÇÍÆ³öÁËJIT(Just-In-Time)±àÒëÆ÷£¬ÁíÍâÒ»¸ö¸Ä½øÊÇAWT 1.1¡£
ÔÚJDK 1.1ʱ´ú£¬Javaƽ̨·ÖΪPersonalJavaÓëEmbeddedJava£¬Ç°Õ߱ȽÏÊÊÓÃÓÚÔËËã×ÊÔ´ºÍÄÚ´æ·á¸»µÄÉ豸£¬¶ø×ÊÔ´ÓÐÏÞÕßÊÊÓÃÓÚºóÕß¡£ÕâÑùµÄ·ÖÀàÃ÷ÏÔ²»·ûºÏʱ´ú·¢Õ¹µÄ³±Á÷£¬ËùÒÔ£¬Javaƽ̨´¦´¦Ô̲Ø×ÅеķÌ츲µØµÄ¸ïÃü¡¡
J2SE1.2:µ®Éú
JDK 1.2ÔÚ1998Äê12ÔÂ4ÈÕµÄÂ¡ÖØ·¢²¼£¬±êÖ¾×ÅJava2ƽ̨µÄµ®Éú¡£Java 2µÄJ2SE 1.2ʱ´úÊÇÒ»¸ö´ó±ä¸ïʱ´ú£¬Ëü½øÐÐÁËÈçϵÄÈý´ó¸ïÃü:
¡ñ Êг¡Íƹã¸ïÃü
Sun¹«Ë¾ÔÚJava 1.2°æÒÔºó½«JDK 1.2¸ÄÃûΪJ2SDK£¬½«Java¸ÄÃûΪJava 2¡£ÔÚ1999ÄêSun¹«Ë¾»¹½«Java 2ƽ̨·ÖΪÈý´ó¿é:J2SE£¬J2EE£¬J2ME¡£Õâ´ÎÊг¡Íƹã¸ïÃü˳ӦÁËÍøÂç¼±ËÙ·¢Õ¹µÄ³±Á÷£¬¶ÔJava 2ƽ̨µÄ·¢Õ¹Æðµ½Á˺ܺõĴ߻¯¼ÁµÄ×÷Óá£
¡ñ API¹©Ó¦±ê×¼¸ïÃü
¶øËæ×ʩӦÉ̵IJ»Í¬£¬JavaµÄAPI·ÖΪÈý´óÀà:
Java Core API:ÓÉSun¹«Ë¾Öƶ¨µÄ»ù±¾µÄAPI£¬ËùÓеÄJavaƽ̨¶¼Ó¦¸ÃÌṩ¡£
Java Optional API:ÓÉSun¹«Ë¾Öƶ¨µÄÀ©³äAPI£¬Javaƽ̨¿ÉÒÔÓÐÑ¡ÔñµØÌṩ¡£
ÌØÊâAPI:ÓÉÌØÊâ³§ÉÌ»òÕß×éÖ¯ÌṩµÄAPI¡£
¡ñ APIÖÆ¶¨¹ý³ÌµÄ¸ïÃü
Èç¹ûÄãÓÐÐèÇó²»ÄÜͨ¹ý×ñѱê×¼µÄAPIÀ´ÊµÏÖ,¿ÉÒÔÏòJCPÌá³öÖÆ¶¨ÐµÄAPIµÄÇëÇó,¾¹ýÉóºË,ÄãµÄÇëÇó¿ÉÄܱ»Í¨¹ý»òÕß²µ»Ø;Èç¹ûÊDZ»Í¨¹ý,Ôò¿ªÊ¼½øÈëÖÆ¶¨¸ÃAPIµÄ³ÌÐò¡£
J2SE 1.2ʱ´ú½øÐеÄÕâЩ¸ïÃüÐγɵÄÖÆ¶ÈÒ»Ö±ÑØÓõ½ÏÖÔÚ,¶ÔJava¼¼ÊõµÄ·¢Õ¹ÐγÉÁËÉîÔ¶µÄÓ°Ïì¡£
³ýÁËÉÏÊöµÄÈý´ó¸ïÃü£¬Java 2»¹Ö§³Ö²¢ÐÂÔöÁËÐí¶àÐÂÌØÐÔ£¬×îÊÜ×·ÅõµÄµ±ÊôSwing¿â¡£SwingÊÇÇáÁ¿¼¶µÄAPI£¬Ëü²»µ«Óи÷ʽ¸÷ÑùÏȽøµÄ×é¼þ£¬¶øÇÒÁ¬×é¼þ·ç¸ñ¶¼¿É³é»»¡£Swing³öÏÖÖ®ºó£¬´ó¼ÒºÜ¿ìµØ¾Í²»Ì«Ê¹ÓÃAWTÁË¡£Java 2»¹·ÏÆúÁËһЩAPI£¬×îÖØÒªµÄιýÓÚThreadÀàÖжÔsuspend(),resume()ºÍstop()µÈ·½·¨µÄ·ÏÆú¡£ÓÉÓÚJDK 1.1µÄ¼¯ºÏÀà¿âÖеÄVectorÀàºÍHashTableÀà¶¼¿¼ÂÇÁËͬ²½£¬ÔÚÆ½³£µÄʹÓÃÖÐÓ°ÏìЧÂÊ£¬ËùÒÔJava 2רÃÅÌí¼ÓÁ˶ÔÓ¦µÄ·Çͬ²½À࣬²¢ÍêÉÆÁ˼¯ºÏÀà¿â¡£
J2SE1.3:ÍØ¹ã
Java 2Æ½Ì¨ÍÆ³öºó£¬µÃµ½ÁËÊг¡µÄÇ¿ÁÒ·´Ï죬ËùÒÔ£¬ÔÚ2000Äê5ÔÂ8ÈÕÍÆ³öµÄJ2SE 1.3¶ÔJ2SE 1.2µÄ¸Ä½ø£¬Ö÷ÒªÊǶԸ÷ÖÖÒÑÓÐAPIµÄ¼ÓÇ¿ºÍ¶ÔÐÂAPIµÄÍØÕ¹¡£
Êý×ÖÔËËã:¼ÓÈëÁËjava.lang.StrictMath,·½±ãÎÒÃǵÄÒ»°ãµÄÊý×ÖÔËËã¡£
еÄTimer API:ÏàÐÅ´ó¼Ò¶ÔÆäÖеÄjava.util.TimerºÍjava.util.TimerTaskÒ»¶¨²»Ä°Éú¡£
Collections°ü:¼ÓÈëÁËһЩеÄAPI£¬·½±ãÎÒÃǵÄʹÓá£
ÐéÄâ»úÍ£Ö¹¹³×Ó:J2SE 1.3»¹¼ÓÈëÁËÒ»¸öÇ¿´óµÄ¹¦ÄÜ£¬ÄǾÍÊÇÐéÄâ»úÍ£Ö¹¹³×Ó(Virtual Machine Shutdown Hooks)£¬Õâ¸ö¹¦ÄÜʹµÃÎÒÃÇÄܹ»ÔÚÐéÄâ»úֹͣʱÍê³ÉÎÒÃÇ×Ô¼ºµÄ²Ù×÷£¬±ÈÈç¹Ø±ÕÍøÂçÁ¬½Ó»òÕß±£´æ»á»°×´Ì¬»òÕßÇå³ýÁÙʱÎļþµÈµÈ¡£
DNS·þÎñ:ÔÚJNDI½Ó¿Ú·½Ã棬¼ÓÈëÁËÒ»¸öDNS·þÎñµÄʵÏÖ¡£
JiniʵÏÖ:J2SE 1.3°üº¬ÁËÒ»¸öJiniʵÏÖ£¬ÕâʹµÃÎÒÃÇ¿ÉÒÔ·½±ãµØ°ÑÖîÈç´òÓ¡»ú¡¢ÉãÏñ»úºÍ´ÅÅÌÇý¶¯É豸²åÈëÏÖÓÐÍøÂçÖУ¬²¢ÇÒÄÜ×Ô¶¯ËÑË÷ÒÑÔÚÍøÉϵÄÉ豸¿ÉÒÔÌṩµÄ·þÎñ²¢ÏíÓÃÕâЩ·þÎñ¡£
XMLÖ§³Ö£ºÓÉÓÚ¼ÆËã»úÍøÂçºÍXML¼¼ÊõµÄ¿ìËÙ·¢Õ¹£¬ J2SE 1.3ÔÚOptional APIÖÐÒýÈëÁËJava API for XML°ü¡£
HotSpotÐéÄâ»ú:J2SE 1.3ÒýÈëÁËHotSpotÐéÄâ»ú¡£ÔÚSolaris°æµÄJDK 1.3ÖУ¬ÒѾ²»Ö§³Ö´«Í³µÄÐéÄâ»ú£¬¶øWindows°æµÄJDK 1.3ͬʱ֧³Ö´«Í³ÐéÄâ»úºÍHotSpotÐéÄâ»ú¡£
´ÓÉÏÃæµÄ·ÖÎö¿ÉÒÔ¿´³ö£¬J2SE 1.3Ö÷ÒªÊǶÔJ2SE 1.2²é©²¹È±ºÍÍØÕ¹ÐµÄAPI¡£´ÓÓ¦ÓÃÁìÓò·½Ã濼ÂÇ£¬J2SE 1.3ÒѾº¸ÇÁËÊý¾Ý¿â¡¢WEB¡¢¶àýÌå¡¢ÍøÂç¡¢µç»°¡¢Ó°Ïñ¡¢¼Ó½âÃÜ¡¢Í¼Ðεȵȴ󲿷ֵÄÐÅÏ¢¼¼ÊõÁìÓò¡£
ÔÚÕâ¸öʱÆÚJava 2»¹ÓÐÒ»¸öÖØÒª»î¶¯¾ÍÊÇÍÆ³öSCSL(SunÉçÇøÔ´´úÂëÐí¿É)Ðí¿ÉÐÒé¡£Sun¹«Ë¾¿ª·ÅÔ´´úÂëÏîÄ¿µÄ¡°Å®1ºÅ¡±Danese CooperÔÚ1999Äê¼ÓÈ빫˾£¬¸ºÔðSun£¨°üÀ¨Java£©ºÍ¿ª·ÅÔ´´úÂëÉçÇøÖ®¼äµÄе÷¹¤×÷¡£SunÒ»Ö±¾¡¿ÉÄÜÔÚÓ®ÀûºÍ¿ª·ÅÔ´´úÂëÖ®¼äѰÇó¸üºÃµÄƽºâ¡£
JavaµÄ´óÐÐÆäµÀÒýÆðÁËMicrosoftµÄ¾¯Ìè²¢Ö±½Óµ¼ÖÂÁË.NetµÄ²úÉú£¬ÕâͬʱҲÐû²¼ÁËJava×÷Ϊ¶ÀÒ»ÎÞ¶þµÄInternetƽ̨µØÎ»µÄ½áÊø¡£ÕâÁ½¸ö¶ÔÊÖÔÚ½ÏÁ¿ÖÐÏ໥ѧϰ£¬ÏÖÔÚÔÚ¼¼Êõ¼Ü¹¹ÉϵÄÄ¿±êÉÏÒÑÇ÷Ïàͬ¡£
J2SE 1.4:¿ìËÙ
J2SE 1.4ƽ̨µÄÍÆ³ö·¢ÉúÔÚ2002Äê2ÔÂ13ÈÕ£¬ÓÉÓÚ´ËǰÔÚJavaƽ̨ºÍ.NETƽ̨¼ä·¢ÉúÁ˹æÄ£ºÆ´óµÄÊëÓÅÊëÁÓµÄÂÛÕ½£¬¶øÂÛÕ½ÖУ¬Javaƽ̨×î´óµÄȱµã¾ÍÊÇÐÔÄÜÎÊÌ⣬ËùÒÔJ2SE 1.4ƽ̨°ÑÐÔÄܵĸÄÉÆ·ÅÔÚÁË×îÖØÒªµÄλÖá£
HotSpotÐéÄâ»ú:HotSpotÐéÄâ»úÄܹ»ºÜ´ó³Ì¶ÈÉÏÌá¸ßÐÔÄÜ£¬ËùÒÔJ2SE 1.4ÒѾ²»Ö§³Ö´«Í³µÄÐéÄâ»ú¡£ÏÖÔÚ£¬Æô¶¯Ó¦ÓóÌÐòÓ¦¸Ãͨ¹ý-client»òÕß-serverÑ¡ÏîÀ´Æô¶¯¡£
Ëø»úÖÆ:ÓÉÓھɰæµÄHotSpotÐéÄâ»úµÄËø»úÖÆ»áµ¼ÖÆÑÏÖØµÄÐÔÄܺ͹¦ÄÜÎÊÌ⣬J2SE 1.4ÒѾ¸ÄдÁ˸ÃËø»úÖÆ¡£
°²È«API:JCE¡¢JSSEºÍJAASÕâÈý´ó°²È«API´Óoptional APIÒÆµ½ÁËcore APIÖС£ÕâÑù£¬J2SE 1.4µÄ°²È«Óò(SecureRandom)ʵÏÖ¿ÉÒÔÀûÓòÙ×÷ϵͳÌṩµÄ°²È«»úÖÆ£¬ÒÔ±ãËõ¶ÌÓ¦ÓóÌÐòµÄÆô¶¯Ê±¼ä¡£
RandomAccess±ê¼Ç½Ó¿Ú:¼ÓÈëÁËRandomAccess±ê¼Ç½Ó¿Ú£¬Èç¹ûÒ»¸öListʵÏÖÁ˸ýӿڣ¬Ôò±íʾËüÖ§³Ö¿ìËÙµÄËæ»ú·ÃÎÊ£¬ÕâÑù¿ÉÒÔÌá¸ßList·ÃÎʵÄËÙ¶È¡£
LinkedHashMap:¼ÓÈëÁËLinkedHashMap£¬ÕâÊÇÒ»¸ö²åÈëÅÅÐòµÄMapʵÏÖ£¬µ«ËüµÄÔËÐÐËٶȺÍHashMapÒ»Ñù¿ì¡£
·´Éä:ºÜ¶à²úÆ·Öж¼ÒªÊ¹Ó÷´Éä(Reflection)»úÖÆ£¬µ«´ó¼ÒÖªµÀ£¬·´ÉäÊÇÏ൱ºÄʱµÄ£¬ËùÒÔ£¬J2SE 1.4ÖÐÖØÐ´ÁËjava.lang.reflect.Field¡¢java.lang.reflect.Method.invoke()¡¢java.lang.reflect.Constructor.newInstance()ºÍClass.newInstance()µÈ·½·¨£¬Ê¹µÃÎÒÃÇÀûÓ÷´ÉäÒ²ÄÜд³ö¸ßÐÔÄܵÄÓ¦ÓóÌÐò¡£
64λ¼ÆËã:J2SE 1.4Ö§³Ö64λ¼ÆËã¡£
еÄI/O API:J2SE 1.4ÔÚAPI²ãÃæ×î´óµÄ±ä¶¯£¬¾ÍÊÇËü¸üÐÂÁËÔÓеÄjava.io°ü£¬ÒÔ¼°¼ÓÈëÁËÒ»×é¸üÓÐЧÂʸü¶à¹¦ÄܵÄNew I/O API¡£
¶ÏÑÔºÍÈÕÖ¾´¦Àí:J2SE 1.4°æ±¾ÔÚJavaÓïÑÔ²ãÃæÉϼÓÈëÁ˶ÏÑÔ£¨assert¹Ø¼ü×Ö£©£¬ÔÚAPI²ãÃæÉϼÓÈëÈÕÖ¾´¦ÀíAPI£¬ÕâЩΪ³ÌÐòµÄµ÷ÊÔÌṩÁËÇ¿ÓÐÁ¦µÄÖ§³Ö¡£
´ÓÉÏÃæµÄ·ÖÎö¿ÉÒÔ¿´³ö£¬Java 2ƽ̨ÔÚ¾¹ýÊýÄêµÄ·¢Õ¹ºó£¬ÒѾ±È½Ï³ÉÊìÎȶ¨£¬J2SE 1.4Ö÷ÒªÊÇ¶ÔÆ½Ì¨µÄÐÔÄܽøÐн϶àµÄ¿¼ÂǺÍÐ޸ġ£ÔÚ·Ö²¼Ê½³ÌÐò·½Ã棬1.4°æ±È1.3°æµÄÔËÐÐЧÂÊÌá¸ßÁËÒ»°ëÒÔÉÏ£»¶øÔÚ¿Í»§¶Ë³ÌÐò·½Ã棬1.4°æ±È1.3°æµÄЧÂÊÌá¸ßÁË1/3¡£
J2SE 1.4°æÊÇJ2SEµÚÒ»¸ö²ÎÓëÁË Java¹²Í¬Ìå¹ý³Ì(JCP)µÄJ2SE°æ±¾¡£ ÏñBorland¡¢Compaq¡¢Fujitsu¡¢ SAS¡¢ Symbian¡¢ IBMÕâÑùµÄ¹«Ë¾£¬ºÍSunÒ»Æð¶¨Òå²¢·¢Õ¹ÁËJ2SE 1.4¹æ·¶¡£ÔÚ¿ª·Å¡¢Á¼ºÃµÄÎĵµ±à׫Óë¹ÜÀíµÄ¹ý³ÌÖУ¬ÐγÉÁËÒ»¸ö¸ßÖÊÁ¿µÄ¡¢´ú±íÁËJava¹²Í¬ÌåµÄ¶àÑùÐԵĹ淶¡£
J2SE5.0:Ò×ÓÃ
ÔÚ2004ÄêÊ®ÔÂJ2SE 5.0·¢²¼µÄʱºò£¬Sun¹«Ë¾ÕâÑù½âÊÍÕâ´Î°æ±¾Ãû³Æ²»ÊÇJ2SE 1.5¶øÊÇJ2SE 5.0µÄÔÒò£º¡°´ÓJavaµ®ÉúÖÁ½ñÒÑÓÐ9Äêʱ¼ä£¬¶ø´ÓÓÐJ2SEËãÆðÒ²ÓÐ5¸öÄêÍ·ÁË£»ÔÚÕâÑùµÄ±³¾³Ï£¬½«¸Ã°æ±¾ºÅ´Ó1.5¸ÄΪ5.0¿ÉÒÔ¸üºÃµÄ·´Ó³³öаæµÄJ2SEµÄ³ÉÊì¶È¡¢Îȶ¨ÐÔ¡¢¿ÉÉìËõÐÔ¡¢°²È«ÐÔ¡£¡±
J2SEµÄÕâ´Î±ä¸üÖ®ÖØ´óºÍÒâÒåÖ®ÉîÔ¶£¬µÄÈ·Ò²ÖµµÃÎÒÃÇΪ֮°Ñ°æ±¾ºÅ±ä»»µ½J2SE 5.0¡£ÎÒÃÇÔÙ¿´¿´Sun¹«Ë¾ÍøÕ¾¶ÔJ2SE 5.0µÄfeaturesÃèÊö:¡°Í¨¹ýÔöÇ¿Javaƽ̨µÄÁ¦Á¿£¬ÔÊÐí¿ª·¢Õ߸üÈÝÒ×µØÊ¹Óã¬Java±à³ÌÓïÑÔµÄÕâЩ¸Ä½ø½«ÎüÒý´óÁ¿¸÷ÖÖJava¿ª·¢Õß¡±£¬ÕâÊÇ¡°Java¼¼Êõ·¢Õ¹Àú³ÌµÄÒ»¸öÖØÒªÀï³Ì±®¡± ¡£´ÓÕâ¸öÃèÊöÎÒÃÇ¿ÉÒÔ¿´³ö£¬J2SE 5.0×î´óµÄÄ¿±êÊÇͨ¹ýÌṩÒ×ÓÃÐÔ¶øÎüÒý¸÷ÖÖ¿ª·¢Õß(µ±È»°üÀ¨ÒÔǰµÄC/C++¿ª·¢Õß) £¬¶øËü¶ÔÒÔǰ°æ±¾µÄÐ޸IJ¢²»½ö½öÊÇAPIµÄÉý¼¶£¬¶øÇÒ°üÀ¨¶ÔJavaÓïÑÔ²ãÃæµÄ¸Ä½ø£¬±»ÓþΪÊÇ¡±×ÔJavaÎÊÊÀÒÔÀ´µÄ×î´óÒ»´ÎÓïÑÔ±ê×¼±ä»¯¡±¡£
·ÃÎÊ»·¾³±äÁ¿:×î³õµÄJavaÓïÑÔÓÐÒ»¸ö·ÃÎÊ»·¾³±äÁ¿µÄ·½·¨System.getenv()£¬µ«ÒòΪJavaÐû³ÆµÄ¡±Write Once,Run AnyWhere¡±ÌØÐÔ£¬ËùÒÔÔÚJDK 1.0ÖÐÈ¥µôÁËÕâ¸öÄܹ»·ÃÎÊÆ½Ì¨×¨ÓÐÐÅÏ¢µÄ·½·¨¡£ÔÚJ2SE 5.0ÖУ¬ËüÓÖÀ´ÁË£¬²¢ÓÐËùÀ©³ä¡£Óɴ˿ɼûJ2SE 5.0¶Ô±à³Ì·½±ãÐÔµÄÖØÊӳ̶ȡ£
·ºÐÍ:J2SE 5.0ÌṩÁËÇ¿´óµÄ·ºÐÍ»úÖÆ£¬ÈóÌÐòÔ±¿ÉÒÔ¼õÉÙ´úÂëÖØ¸´£¬Õâ¸ö±ä»¯Ó¦¸Ã¿ÉÒÔÎüÒýС²¿·ÖµÄC#¿ª·¢ÈËÔ±°É¡£
ÔöÇ¿µÄforÑ»·:ΪÁ˿˷þÆÕͨforÑ»·µÄ´úÂëÓ·Ö×ÌØµã£¬J2SE 5.0ÌṩÁËÔöÇ¿µÄforÑ»·£¬ÎÒÃÇÏÖÔÚ¿ÉÒÔÕâÑùдһ¸öforÑ»·:
public void printAll(Collection
{
for(String str : coll)
{
System.out.println(str);
}
}
ÔõôÑù£¿ÊDz»ÊǼòµ¥Á˺ܶࣿ
×Ô¶¯µÄ×°Ïä/²ðÏä:
¿É±ä²ÎÊýÊýÄ¿J2SE 5.0¿ªÊ¼Ö§³ÖVarargs(²»¹Ì¶¨×Ô±äÁ¿¸öÊý)£¬J2SE 5.0Öл¹¼ÓÈëÁËÒÔǰÅׯúµÄö¾ÙºÍC·ç¸ñµÄ¸ñʽ»¯Êä³ö£¬ÕâÓ¦¸ÃÊÇΪÁËÎüÒýÒÔǰµÄC¿ª·¢Õß°É¡£±Ï¾¹,ÔÚC¿ª·¢ÖÐö¾ÙºÍ¸ñʽ»¯Êä³öÓõÄÊÇÌ«¶àÁË¡£
²¢·¢ J2SE 5.0ÖмÓÈëÁËjava.util.concurrent°ü£¬²¢Ïò¼¯ºÏ¿ò¼ÜÖмÓÈëÁËQueue½Ó¿Ú£¬J2SE 5.0»¹Îª¸÷ÖÖ¼¯ºÏÌṩÁ˲¢·¢Çé¿öϵÄʵÏÖ¡£
PropertiesÀàÔöÇ¿ ÓÉÓÚXMLµÄÆÕ¼°ÐÔÓ¦Óã¬J2SE 5.0Ϊjava.util.PropertiesÀà¼ÓÈëÁË´ÓXMLÎļþÖÐ×°ÔØÊôÐԺͰÑÊôÐÔÖµ´æ´¢µ½XMLÎļþÖеķ½·¨¡£
Annotation¹¦ÄÜJ2SE 5.0ÌṩÁË×¢½â(annotation)/ÔªÊý¾Ý£¨metadata£©¹¦ÄÜ£¬ÏàÐÅÒÔºóµÄ´ó²¿·ÖÓ¦ÓòúÆ·¶¼½«³ä·ÖÀûÓÃËüµÄ×¢½â¶øÊµÏÖ²úÆ·µÄ¸÷ÖÖÌØÐÔ¡£
ÆäËüJ2SE 5.0»¹ÔÚ¶àỊ̈߳¨²¢·¢»úÖÆ£©¡¢°²È«¡¢¹ú¼Ê»¯¡¢UIµÈ·½Ãæ½øÐÐÁË´ó¹æÄ£µÄ±ä¸ü£¬Ê¹µÃÎÒÃÇÄܹ»¸ü·½±ãµØ½øÐÐJava¿ª·¢¡£
Æäʵ£¬ÉÏÃæµÄÕâЩ±ä¸ü£¬²¢²»ÊÇÎÒÃdzÌÐòÔ±·ÇÒª²»¿ÉµÄÄÚÈÝ¡£ÎÒÃÇÍêÈ«¿ÉÒÔͨ¹ý×Ô¼ºµÄ°ì·¨À´´ïµ½ÕâЩ±ä¸üʵÏֵŦÄÜ¡£µ«J2SE 5.0µÄÄ¿±ê¾ÍÊÇÈÃÎÒÃdzÌÐòÔ±Äܹ»¸ü¼Ó·½±ãµØ½øÐпª·¢£¬ËùÒÔ£¬ÎÒÃÇÔÚ»ùÓÚJ2SE 5.0¿ª·¢Ê±£¬Ó¦¸ÃÄܹ»Ã÷ÏÔµÄÌå»áµ½ËüµÄÒ×ÓÃÐÔ¡£
Õ¹Íû
ʱÖÁ½ñÈÕ£¬J2SEÒѾ·¢Õ¹ÎªÒ»¸ö¸²¸ÇÃæ¹ã¡¢Ð§Âʸߡ¢Ò×ÓÃÐÔÇ¿µÄ¼¼Êõƽ̨(¼ûÈçϵÄJ2SE APIÌåϵ½á¹¹Í¼)£¬µ«Java²¢Ã»ÓÐֹͣǰ½øµÄ½Å²½¡£Mustang°æ±¾µÄJ2SEÕýÔÚ½ôÂàÃܹĵĿª·¢µ±ÖУ¬°´ÒÔǰµÄ¹ßÀý£¬Ã¿Á½Äê»á·¢²¼Ò»¸öȫеÄJ2SE°æ±¾£¬ËùÒÔMustang¿ª·¢°æ¶ÔÓ¦µÄJ2SE 6.0·¢²¼°æ½«ÔÚ2006ÄêÍê³É¡£
2005Äê5ÔÂ23ÈÕÊÇJava¼¼ÊõÊ®ÖÜÄêÇìµäÈÕ£¬ÔÚÕâÊ®ÄêµÄ·¢Õ¹ÖУ¬Javaƽ̨ÎüÒýÁËËİÙÍò¿ª·¢Õߣ¬ÔÚÍøÂç¼ÆËã±é¼°È«ÇòµÄ½ñÌ죬¸üÊÇÓÐ17.5ÒŲ́É豸ʹÓÃÁËJava¼¼Êõ¡£×÷ΪJava¼¼ÊõµÄ»ù´¡£¬J2SEµÄ¹¦¼¨²»¿ÉÑÚû£¬ÎÒÃÇÆÚÍûJ2SE°éËæJavaƽ̨һ·×ߺã¡
MATRIXÉçÇø½éÉÜ:
Matrix£¬ÃæÏòJava°®ºÃÕߵķÇÓ®ÀûÐÔ×éÖ¯¡£³ÉÁ¢ÒÔÀ´£¬MatrixÒ»Ö±²»ÒÅÓàÁ¦µØÎªÍƶ¯ÖйúJava¼¼ÊõºÍ¿ªÔ´Èí¼þµÄ½ø²½ºÍ·¢Õ¹¶øÅ¬Á¦£¬·¢²¼ÁËJasmin·´±àÒëÆ÷£¬JmatrixȫվϵͳµÈ¿ªÔ´²úÆ·¡£¼ÓÈëMatrix£¬ÓëJava¹²Î裨www.matrix.org.cn£©
ÖйúÆóÒµ×ß½üJCP
ÎÄ/»Æº£²¨
¶ÔJava¿ª·¢ÈËÔ±£¬JCP£¨Java Community Process£©Õâ¸öÃû´Ê²¢²»Ä°Éú¡£µ«¶Ô¹úÄڴ󲿷ÖJava¿ª·¢ÈËÔ±À´Ëµ£¬JCP¸ü¶àµÄÊÇÒ»¸ö·ûºÅ£¬Ò»¸ö¹ú¼ÊJava¿ª·¢ÉçÇøµÄÏóÕ÷¡£¶ø¶ÔJCPÕâ¸ö×éÖ¯µÄÀ´Ô´¡¢×é³É¡¢ÔË×÷ģʽÒÔ¼°JCP¶ÔÖйúÈí¼þ²úÒµ£¬ÉõÖÁÊÇÎÒÃÇ×ÔÉí¹¤×÷ÊÂÒµµÄÓ°Ïì¿ÉÄܲ»ÉõÁËÁË¡£ÓÉÓÚÀúÊ·ÔÒò¡¢ÎÄ»¯ÓïÑԵIJîÒ죬¹úÄÚJava³§ÉÌһֱδÄܶÔJCPÒýÆð×ã¹»ÖØÊÓ£¬´Ó¶øµ¼Ö¹úÄÚµÄÈí¼þ³§ÉÌÎÞ·¨²ÎÓëµ½JCPµÄÐÐÒµ±ê×¼µÄÖÆ¶¨¹ý³ÌÖÐÈ¥£¬½á¹û¾ÍʹÎÒÃÇÖ»ÄܸúËæÖÆ¶¨ºÃµÄ±ê×¼£¬¶ø²»ÄÜÓ°Ïì±ê×¼Ïò×ÅÓÐÀûÓÚ¹úÄÚÈí¼þ²úÒµµÄ·½Ïò·¢Õ¹¡£
¸úËæµÄÁÓÊÆÊǺÜÃ÷ÏԵģ¬ÒÔÍòÖÚÆÚ´ýµÄÏÂÒ»´úJava³Ö¾Ã»¯±ê×¼EJB 3ΪÀý¡£EJB 3¹æ·¶Ä¿Ç°ÈÔÔÚÔçÆÚ¹æ·¶½×¶Î£¬Ô¤¼ÆÒªµ½£²£°£°£¶ÄêÖÐÆÚ²ÅÄÜÍê³É×îÖÕ°æ±¾£¬µ«EJB 3ר¼Ò×éÖеÄJava³§É̶¼ÒѾ¸ù¾ÝÌÖÂ۵ijõ²½Òâ¼û¿ªÊ¼Á˲úÆ·¿ª·¢£¬ÓÐЩÉõÖÁ¿ªÊ¼·¢²¼Ô¤ÀÀ°æ±¾¡£¶ø¹úÄÚµÄJ2EE³§ÉÌÈ´¿ÉÄÜÒªµÈµ½EJB 3µÄ×îÖÕ°æ²Å¿ÉÒÔ×ÅÊÖ½øÐÐÑо¿ºÍ¿ª·¢£¨¸ù¾ÝÔçÆÚ¹æ·¶²»¿É¿¿£¬±ä¶¯Í¨³£ºÜ´ó£©£¬²î¾à×ÔÈ»¾Þ´ó¡£ÔÚÆäËûÖîÈçÈçÉÌÒµÖÇÄÜ¡¢¹¤×÷Á÷¡¢Êý¾ÝÍÚ¾òµÈÁìÓò¶¼´æÔÚÀàËÆÇé¿ö¡£
¿ÉϲµÄÊǹúÄÚÈí¼þÒµµÄJavaÐÐÒµ×éÖ¯ºÍ¹ÜÀí²¿ÃŶ¼ÒѾÈÏʶµ½£¬¼ÌÐøÅÇ»²ÔÚJCPµÄÃÅÍâ²»ÀûÓÚ¹úÄÚJava²úÒµµÄÉú´æºÍ·¢Õ¹£¬Ò²ºÍ¹úÄÚÅÓ´óµÄÈí¼þÊг¡²»Ïà·ûºÏ¡£ÔÚÐíÐí¶à¶àÓÐ־֮ʿ£¨ºÜ¶àÊDZÊÕßµÄǰ±²£¬ËûÃÇΪ¹úÄÚÈí¼þÒµ·¢Õ¹Ä¬Ä¬Å¬Á¦£¬ÊµÔÚÈÃÈËÇÕÅ壩µÄ¹²Í¬Å¬Á¦Ï£¬JCPµÄÖйú·ÖÖ§Ò²¼´½«³ÉÁ¢¡£¶ø×÷ΪµÚÒ»¸ö³¢ÊÔ£¬ÖйúµÄJavaÓ¦ÓÃÌåÑéÈÏ֤ʵÑéÊÒÔÚ¹ú¼ÒÓ¦ÓÃÈí¼þ²úÆ·ÖÊÁ¿¼à¶½¼ìÑéÖÐÐÄ¡¢Sun¼ÆËã»úϵͳ£¨Öйú£©ÓÐÏÞ¹«Ë¾¡¢ÖйúÈí¼þÐÐҵлáÖмä¼þ·Ö»á¡¢±±¾©Èí¼þÓëÐÅÏ¢·þÎñÒµ´Ù½øÖÐÐÄËĵ¥Î»¹²Í¬Å¬Á¦ÏÂÔÚ±±¾©³ÉÁ¢£¬ÎªÖйúµÄJavaÈí¼þ³§ÉÌÔÚ¹úÄÚ½øÐÐÈí¼þµÄJCPÈÏÖ¤ºÍ¼æÈݲâÊÔ¡£
¿ÉÒÔÔ¤¼û£¬ÔÚ²»¾ÃµÄ½«À´£¬Ô½À´Ô½¶àµÄÖйúJava³§É̽«ÄÜ×ß½øJCP£¬·¢»Ó×Ô¼ºµÄÖǻۣ¬³ÉΪÄÜÓ°ÏìJava²úÒµµÄÒ»Ö§ÖØÒªÁ¦Á¿¡£
- ×÷Õߣº Paul 2005Äê08ÔÂ19ÈÕ, ÐÇÆÚÎå 13:09¡¡ »Ø¸´£¨0£© |¡¡ ÒýÓã¨0£© ¼ÓÈ벩²É
ÓëJavaÏà¹ØµÄËÄÊ®¸öÃû×Ö
Ê®´óʼþ
1990£1994£ºJavaÔµÆð
ÎÄ/ÃÏÑÒ
Larry Wall˵£¬ÓÅÐã³ÌÐòÔ±Ó¦ÓеÄÈý¸öÌØµã:ÀÁ¶è¡¢¼±ÔêºÍ°ÁÂý¡£Java¾ÍÊǵ®ÉúÔÚһȺÀÁ¶è¡¢¼±Ôê¶ø°ÁÂýµÄ³ÌÐòÌì²ÅÖ®ÖС£
1990Äê12Ô£¬SunµÄ¹¤³ÌʦPatrick Naughton±»µ±Ê±Ôã¸âµÄSun C++¹¤¾ßÕÛÄ¥µÄ¿ì·èÁË¡£Ëû´óÉù±§Ô¹£¬²¢ÍþвҪÀ뿪SunתͶµ±Ê±ÔÚSteve JobsÁ쵼֮ϵÄNeXT¹«Ë¾¡£Áìµ¼²ãΪÁËÁôסËû£¬¸øËûÒ»¸ö»ú»á£¬Æô¶¯ÁËÒ»¸ö½Ð×öStealth£¨ÃØÃÜÐж¯£©µÄÏîÄ¿¡£Ëæ×ÅJames GoslingµÈÈ˵ļÓÈ룬Õâ¸öÏîÄ¿¸üÃûΪGreen¡£ÆäÄ¿±êÊÇʹÓÃC++ΪǶÈëʽÉ豸¿ª·¢Ò»ÖÖеĻù´¡Æ½Ì¨¼¼Êõ£¬James Gosling±¾È˸ºÔ𿪷¢Ò»¸öSGML±à¼Æ÷¡£ÕýÈçÈËÃÇʺó·ÖÎöµÄÄÇÑù£¬ÕâλÌì²ÅµÄ³ÌÐòԱ̫ÀÁ¶è£¬ËùÒÔûÓаÑC++ѧºÃ£¬¿ª·¢ÖÐÅöÁËһͷ°ü;Ì«¼±Ôꡪ¡ªËùÒÔ²»Ô¸ÒâÍ£ÏÂÀ´¶Á¶ÁScott MeyersµÄÐÂÊé¡¶Effective C++¡·;Ì«°ÁÂý¡ª¡ªËùÒÔÇáÒ׵ؾö¶¨¿ª·¢Ò»ÖÐеıà³ÌÓïÑÔ¡£Ëû°ÑÕâÖÖÓïÑÔÃüÃûΪC++++--£¬Òâ˼ÊÇC++¡°¼ÓÉÏһЩºÃ¶«Î÷£¬¼õȥһЩ»µ¶«Î÷¡±¡£ÏÔÈ»Õâ¸öÔã¸âµÄÃû×Ö²»¿ÉÄܳ¤Ãü°ÙË꣬ºÜ¿ìÕâÖÖÆÄÊÜͬ°éϲ°®µÄСÓïÑÔ±»ÃüÃûΪOak¡£
µ½ÁË1992Äê9Ô£¬OakÓïÑÔÁ¬Í¬Green OSºÍһЩӦÓóÌÐòÒ»Æð·¢²¼ÔÚ³Æ×öStart 7µÄСÉ豸ÉÏ£¬´Ó¶øÊ¹Ö®ÓÐÁ˵ÚÒ»´Î¾«²ÊµÄÁÁÏà¡£Ëæºó£¬Sun¿ªÁËÒ»¼ÒÃûΪFirstPersonµÄ¹«Ë¾£¬Õû¸öÍŶӱ»×ªÒƵ½Õâ¼Ò¹«Ë¾ÀïÑз¢»ú¶¥ºÐ£¬ÒÔͶ±êʱ´ú»ªÄɹ«Ë¾µÄÒ»¸öÏîÄ¿¡£Õâ°ïÌì²Å±»¼¼Êõ¿ñÈÈËù¹ÄÎ裬¿ª·¢³öÁËÒ»¸ö¸ß½»»¥ÐÔµÄÉ豸£¬½á¹ûûÏ뵽ʱ´ú»ªÄɹ«Ë¾ºÍÓÐÏßµçÊÓ·þÎñÉ̲¢²»Ô¸ÒâÓû§ÓµÓÐÄÇô´óµÄ¿ØÖÆÈ¨£¬´Ó¶øÔÚ¾º±êÖ®Õ½ÖаܸøÁËSGI¡£OakµÄ·æÃ¢Ö®Èñ£¬¾¹È»°Ñ¿Í»§¶¼¸øÏÅãÂÁË¡£Sun¾ÚÉ¥µØ¹Ø±ÕÁËFirstPerson£¬ÕÙ»ØÁËÕû¸öÍŶӡ£ÊÂʵ֤Ã÷£¬´«Í³ÐÐÒµÖÐÄÇЩÄÔÂú·Ê³¦µÄ±£ÊØÖ÷ÒåÕßÊǸ¯ÐàûÂäµÄ¡£»ØÈ¥£¡»Øµ½¼¤ÇéÅìÅȵÄIT²úÒµ£¬×¥×¡»¥ÁªÍøµÄ´ó³±£¬Õâ²ÅÊdzö·£¡1994Ä꣬Oak±»ÃüÃûΪJava£¬Õë¶Ô»¥ÁªÍøµÄÐÂÒ»ÂÖ¿ª·¢Èç»ðÈçݱ£¬Ò»ÇÐÒѾ¾ÍÐ÷£¬ÈÛÑÒÔÚµØÏ±¼Á÷£¬»ðɽ¼´½«Åç·¢¡£
1995: JavaÏãŨÊÀ½ç
ÎÄ/Âíΰ
1995Ä꣬SunÕýʽ¶ÔÍ⹫²¼ÁËJava£¬²¢ÇÒ·¢²¼ÁËJDK 1.0¡£ÕâÖÖÍâÐοáËÆC++£¬È´°üº¬Ò»¿ÅSmalltalk°ã´¿½àµÄÃæÏò¶ÔÏóÖ®ÐĵÄȫгÌÐòÉè¼ÆÓïÑÔ¼°Æäƽ̨£¬¼¸ºõÔÚÒ»Ò¹Ö®¼ä¾Í³ÉΪÈí¼þ²úÒµµÄгè¶ù¡£Javaµ±Ê±½ö½ö±»ÓÃÀ´ÎªÍøÕ¾ÖÆ×÷һЩ¶¯Ì¬Ó¦ÓÃ,ÖîÈ綯»Í¼Æ¬Ö®À࣬µ«ÕâÈÔÈ»ÒýÆðÁ˺ܶàWeb¿ª·¢ÕßÃǵÄ×¢Ò⣬ËûÃǷdz£¿ÊÍûÓÐÒ»ÖÖ°²È«µÄÓïÑÔ£¬¿ÉÒÔÔÚ¾²Ì¬µÄHTMLÍøÒ³ÉÏÖÆ×÷¶¯»Í¼Æ¬¡£Sun×îÖÕ°ÑJava¼¯³Éµ½NetScapeä¯ÀÀÆ÷¡£Í¬Ê±ÒòΪËü¾ßÓС°Ö»Ð´Ò»´Î£¬Ëæ´¦ÔËÐС±µÄÌØÐÔ£¬¶øÒýÆðÁ˺ܶ࿪·¢ÕßµÄ×¢Ò⣬ËûÃÇ¿ÉÒÔÔÙÒ²²»ÓÃΪÁËʹ³ÌÐòÄܹ»ÔÚ²»Í¬ÐͺŵÄÓ²¼þÉÏÔËÐжøºÄ·Ñ´óÁ¿µÄʱ¼äÀ´±àÒë´úÂëÁË¡£
µ±Ê±µÄWebä¯ÀÀÆ÷µÄ³öÏÖҲΪJavaµÄ³öÏÖÆðµ½Á˺ܺõÄÍÆ¶¯×÷Óã¬Í¨¹ýJavaºÍWebä¯ÀÀÆ÷µÄ½áºÏ£¬ÈËÃÇËÆºõ¿´µ½ÁËʲô£¬ÓÐÈËÉõÖÁÔ¤ÑÔPC½«ÔÚÒ»Á½ÄêÄÚÍ˳öÀúÊ·µÄÎę̀£¬È¡¶ø´úÖ®µÄÊÇ»ùÓÚJavaµÄä¯ÀÀÆ÷Ó¦ÓóÌÐò£¬Í¨¹ýÍøÂç¼ÆËãÉ豸À´½øÐÐÓ¦Óá£JavaµÄ³öÏÖΪµ±Ê±µÄÈí¼þ²úÒµ´øÀ´ÁËÎÞÏÞµÄåÚÏë¡£
1996£ºJava´óÔ¾½ø£¬ÃËÖ÷µØÎ»¾Í´Ë¶¨
ÎÄ/Âíΰ
SUNÔÚ1996ÄêÒ»¿ªÊ¼Ê×ÏȳÉÁ¢ÁËJavaSoft×éÖ¯£¬²¢ÔÚ1ÔÂ23ÈÕÕýʽ·¢²¼×Ô¼ºµÄJava 1.0£¬×÷Ϊ20ÊÀ¼ÍÒµ½ç³öÏÖµÄ×îÖØÒªµÄ¼¼ÊõÖ®Ò»£¬JavaÒýÆðÁ˱à³ÌÊÀ½çµÄ¸ïÃü¡£Ö±µ½ÏÖÔÚ£¬JavaÈÔÈ»ÊÇ»¥ÁªÍøÉÏ×îÁ÷ÐеÄÓïÑÔ¡£
ÔÚSunÕýʽ·¢²¼Java 1.0Ö®ºó£¬JavaÕâÃÅÐÂÉúµÄÓïÑÔ¾ÍÓµÓÐÁË×Ô¼ºµÄ»áÒ顪¡ªJavaOne£¬Õâ´Î»áÒé³õÊÔÌäÒô¾ÍÎüÒýÁË600¶àÃû²ÎÓëÕß¡£³ýÁËÓµÓÐÕâô¶àµÄ»ý¼«²ÎÓëÕßÀ´½øÐÐJavaµÄ¿ª·¢Ö®Í⣬¸÷´óÖªÃû¹«Ë¾Ò²·×·×ÏòSunÉêÇëJavaµÄÐí¿É¡£Ò»Ê±¼ä£¬NetScape¡¢»ÝÆÕ¡¢IBM¡¢Oralce¡¢SybaseÉõÖÁµ±Ê±¸ÕÍÆ³öWindows 95µÄ΢Èí¶¼ÊÇJavaµÄ×·ËæÕß¡£
JavaµÄÓ¦ÓþÍÏñÊÇÊÀ½çÉϵĶ¥¼¶Íæ¼ÒÃÇ×é³ÉµÄÒ»¸ö¹«¿ªÁªÃË£¬¸æËßÈ«ÊÀ½çÎÒÃÇ´ó¼Ò¾ÍÊǶ¼ÔÚÓÃ×ÅJava¡£Ò²ÕýÊÇÒòΪÈç´Ë£¬JavaÒ²ÕÒµ½ÁË×Ô¼ºµÄ¹éËÞ¡£ÏÖÔÚµÄJ2EEÒѾ³ÉΪÖдóÐÍÆóÒµ¼¶Ó¦Óõıê×¼£¬³ÉΪ³Ð½ÓÊý¾Ý¿âºÍWebÖ®¼äµÄÒ»¸öÖØÒªÇÅÁº¡£
µ±ÄêJavaµÄ»ú»áʵÔÚÌ«¶àÁË£¬ÒÔÖÁÓÚºÜÄÑÖªµÀµ½µ×¸Ã×öʲô¡£×îÖÕJavaÔÚÓ¦Ó÷þÎñÆ÷Êг¡»ñµÃÁËÄÑÒÔÈ¡´úµÄµØÎ»£¬Ò²È·¶¨ÁËJ2EEµÄ·¢Õ¹·½Ïò£¬²¢ÇÒÈÔ½«ÑÓÐøÏÂÈ¥¡£
1997-2001: ΢ÈíÓëSunµÄJava¹Ù˾
ÎÄ/ÃÏÑÒ
Javaµ®ÉúµÄ1995Ä꣬ÕýÊÇ΢ÈíÔÚÈí¼þ²úÒµµØÎ»´ïµ½áÛ·åµÄʱ´ú£¬Windows 95·¢²¼Ê±µÄ·ç¹â³¡Ãæ¸øÈËÃÇÁôϵÄÉî¿ÌÓ¡ÏóÖÁ½ñÄÑÍü¡£¾¡¹ÜÈç´Ë£¬×÷Ϊ×î׿ԽµÄ¼¼ÊõÁìÐ䣬±È¶û?¸Ç´ÄÈÔÈ»ÃôÈñµØ×¢Òâµ½Java¡£µ±ËûÁ˽âÁËJavaµÄһЩϸ½ÚÖ®ºó£¬¸øÓèÁËÕâÑùµÄÆÀ¼Û:¡°JavaÊǺܳ¤Ê±¼äÒÔÀ´×îÓÅÐãµÄ³ÌÐòÉè¼ÆÓïÑÔ¡£¡±»ùÓÚ´Ë£¬Î¢ÈíÓÚ1996Äê3ÔÂÉêÇë²¢»ñµÃÁËJavaÐí¿ÉÖ¤¡£Î¢Èí¶ÔÓÚJavaµÄÕâÒ»ÈÈÇé̬¶ÈÔÚµ±Ê±´ó´óÌá¸ßÁËÈËÃǶÔJavaµÄÐËȤºÍÐÅÐÄ£¬µ«Ò²Óв»ÉÙÈ˵£ÐÄ΢Èí»áÒÀ¿¿×Ô¼ºÇ¿´óµÄÓ°ÏìÁ¦ÔÚ±ê×¼Ö®ÍâÁíÁ¢±ê×¼£¬´Ó¶øÆÆ»µJavaµÄ´¿½àÐÔ¡£
¹ûÈ»£¬´Ó1997Äê·¢²¼Visual J++µÄµÚÒ»¸ö°æ±¾¿ªÊ¼£¬Î¢Èí¾Í¿ªÊ¼ÔÚJavaÖвôÈë×Ô¼ºµÄ˽ÓÐÀ©Õ¹¡£ÕâºÁÎÞÒÉÎÊÒýÆðSunµÄ¸ß¶ÈÖØÊÓ¡£1997Äê10Ô£¬SunÏòÃÀ¹ú¼ÓÖݵط½·¨ÔºÆðËß΢Èí¹«Ë¾Î¥·´Á½¹«Ë¾¾Í΢ÈíʹÓÃJava¼¼ÊõËùÇ©¶¨µÄºÏͬ£¬Ö¸¿ØÎ¢Èí¹«Ë¾ÔÚ×Ô¼ºµÄJava²úÆ·ÖÐ×öÁË¡°²»Ç¡µ±µÄÐ޸ġ±£¬Î¥·´Á˺ÏͬÖгÐŵÏòÓû§ÌṩJava¼æÈݲúÆ·µÄÌõ¿î¡£ÕâÒ»¹Ù˾¿õÈճ־ã¬Ö±µ½2001Äê1ÔÂË«·½´ï³ÉºÍ½â£¬Î¢Èí½«¼ÌÐøÌṩ²ÉÓÃSun¿ª·¢µÄJava¼¼ÊõµÄÏÖÓвúÆ·£¨°üÀ¨²âÊ԰棩¡£²»¹ý£¬SunÓÐÏÞÖÆµØ½ö¶Ô°üÀ¨Java 1.1.4µÄ΢Èí²úÆ·ÌṩÐí¿É¡£µ½ÁË2001Äê7Ô£¬Î¢Èí¹«²¼Ð°æµÄWindows XP½«²»ÔÙÖ§³ÖSunµÄJVM£¬²¢ÇÒÍÆ³öÁË.NETƽ̨ÓëJava·ÖÍ¥¿¹Àñ¡£
ÏÖÔڻعýÍ·È¥¿´£¬µ±Ê±µÄÕâÒ»³¡¹Ù˾¶ÔJavaÊÀ½ç²úÉúÁËÉîÔ¶µÄÓ°Ïì¡£Èç¹ûûÓÐÕâÒ»³¡¹Ù˾£¬Ò²ÐíºÜ¶àJava³ÌÐòÔ±¶¼ÔÚʹÓÃVisual J++£¬»ùÓÚWFC¿ª·¢Windows¿Í»§¶Ë³ÌÐò£¬Í¬Ê±²»µÃ²»Ãæ¶Ô±»Á½¸ö²»Í¬µÄÊÂʵ±ê×¼Ëù·ÖÁѵÄJavaÊÀ½ç¡£
1998£ºJava 2ƽ̨·¢²¼
ÎÄ/ÌÕÎÄ
1998Ä꣬Java 2ƽ̨Õýʽ·¢²¼¡£¾¹ýÁËÈýÄêʱ¼äµÄ·¢Õ¹¡¢ÈÈÈÈÄÖÄֵĹ¥¹ØÐû´«¡¢ºìºì»ð»ðµÄÖÚ³§É̵ÄÈÈÇé²ÎÓ룬SunÖÕÓÚÖªµÀJavaÊʺϸÉʲôÁË¡£¶Ô±ÈJava¸Õ·¢Ã÷ʱµÄ¼¼Êõ¶¨Î»£¬ÓëJavaµÄÏ·¾çÐÔ´¥¡°Íø¡±µÄÄǶÎÀúÊ·£¬Java 2ƽ̨µÄ·¢²¼¿ÉÕæËãµÃÉÏÊÇÓеķÅʸÁË¡£¸ù¾Ý¹Ù·½µÄÎĵµ£¬Java 2ÊÇSunÒâʶµ½¡°one size doesn¡¯t fit all¡±Ö®ºó£¬°Ñ×î³õµÄJava¼¼Êõ´ò°ü³ÉÈý¸ö°æ±¾µÄ²úÎҲ¾ÍÊÇÖøÃûµÄJ2ME¡¢J2SE¡¢J2EE¡£
Ö®ËùÒÔ˵Java×Ô´ÓJava 2ƽ̨·¢²¼Ö®ºó£¬½øÈëÁËÏÖ´ú¡£ÄÇÊÇÒòΪ֮ǰµÄÀúÊ·Ôõô¿´À´¶¼ºÍÏÖÔÚ³ÌÐòÔ±ÈÕ³£¿ª·¢Ê¹Óõļ¼ÊõÎÞʲô¹ØÏµ£¬±ÈÈçApplet£¬ÒѾºÜÉÙÓÐÈËʹÓÃÁË¡£Java 2Ö®ºóµÄÀúÊ·¾Í²»Ò»ÑùÁË£¬ÖÁÉÙÈËÃÇÔÚÍÆ³çÇáÁ¿¼¶¿ª·¢£¬ÃÍÅúEJBʱ»¹²»Ê±»áÒýÓÃJ2EEÕâ¸ö´ÊÊÇÈçºÎµ®ÉúµÄ¡£¶øJava 2µÄÈý´ó°æ±¾ÖУ¬³ýÁËJ2EEµÃµ½Á˳¤×ã·¢Õ¹ºÍ¹ã·ºÊ¹ÓÃÖ®Í⣬J2MEÒ²ÔÚÊÖ»úÊг¡ÉÏÈ¡µÃÁË±éµØ¿ª»¨µÄ½á¹û¡£Ïà½Ï֮ϣ¬J2SEÄÑÃâÂäį£¬Ö»Ê£SWTÕâ¸öѪͳ²»´¿µÄ¼Ò»ïÔÚRich Client»Ø¹éµÄʱ´úÎüÒý×ÅÈËÃǵÄÑÛÇòÁË¡£ÎÞÂÛ½ñÌì¿´À´µ±Ê±µÄJava 2ÓжàôµÄ²»³ÉÊ죬ÖÁÉÙ¾¹ýÊг¡ºÍʱ¼äµÄ¼ìÑ飬Java 2¹æ»®³öÀ´µÄÈý´ó·½Ïò°ÑJava¼¼ÊõÖ¸ÏòÁ˹âÃ÷µÄ·½ÏòÊÇÎðÓ¹ÖÃÒɵġ£
1998£ºJCP³ÉÁ¢²¢ÕýʽÔË×÷£¬
Java¿ªÔ´ÉçȺ¿ªÊ¼Å·¢Õ¹
ÎÄ/»Æº£²¨
1998Ä꣬JCP×éÖ¯³ÉÁ¢£¬²¢ÇÒ¿ªÊ¼°ÑÎÕJavaµÄ·¢Õ¹·½Ïò¡£JCP×éÖ¯µÄ¿ª·ÅÐÔ£¬²»µ«Ê¹µÃËùÓжÔJava¸ÐÐËȤµÄÉÌÒµ¹«Ë¾¿ÉÒÔ²ÎÓëJavaµÄ·¢Õ¹£¬¸üÖØÒªµÄÊÇJCPÔÊÐí¸öÈË¡¢·ÇÓ¯Àû×éÖ¯¡¢Ñ§Ð£µÈ¼ÓÈ룬Õâ¾Í¸øJava´øÀ´Á˾޴óµÄ»îÁ¦¡£ËæÖ®ÐËÆðµÄJava¿ªÔ´Ô˶¯µÄ×î´ó¹±Ï×ÊÇʵÏֺ͹ÄÀøÁË֪ʶ¹²Ïí£¬ÔÚÖÚ¶àÈÈÇéµÄ¿ªÔ´³ÌÐòÔ±ÃǵÄŬÁ¦ºÍ·ÖÏíÏ£¬ºÜ¶àÔÏÈÖ»±»ÉÌÒµ¹«Ë¾ÕÆÎյļ¼Êõ¡¢Ë¼ÏëºÍ²úÆ·¿ÉÒÔ±»ËùÓÐÐèÒªµÄ¿ª·¢ÈËÔ±Ãâ·Ñ»òÕßÒԽϵ͵ļ۸ñ»ñµÃʹÓÃȨ, ²¢Í¨¹ý¿ª·ÅÔ´´úÂë¸üÈÝÒ׵ĻñµÃ·´À¡ºÍ¸Ä½øÒâ¼û´Ó¶ø½øÒ»²½ÑÝ»¯·¢Õ¹¡£ÎÒÃÇÖªµÀ£¬Ëùν֪ʶ²»ÊǹÂÁ¢·¢Õ¹ÈÏÖª£¬¶øÊÇÈËÃǵľÑ飬ÈÏʶÊÇ˼¿¼½»Á÷ºÍ»ýÀ۵IJúÎï¡£¶ø¿ªÔ´Ô˶¯Ëù´øÀ´µÄ¿ª·Å¡¢·´À¡¡¢½»Á÷µÄ·çÆøÕýÊÇ·ûºÏÈËÀàÉç»á֪ʶÐγɺͷ¢Õ¹µÄ¹æÂÉ¡£
¿ªÔ´Ô˶¯ÆðÔ´ÓÚÎ÷·½µÄ·¢´ï¹ú¼Ò£¬ÓÐÆäÏÖʵ±³¾°ºÍÎÄ»¯¸ùÔ´¡£1990Äê´ú¿ÉÒÔ˵ÊÇIT²úÒµµÄÒ»¸ö»Æ½ðʱ´ú¡£ÐÅϢʱ´úµÄÐËÆð¶ÔITÈËÔ±£¬ÌرðÊÇÈí¼þÈËÔ±ÓÐמ޴óµÄÐèÇó¡£¶øÈí¼þ¿ª·¢ÓÖÊÇÒ»ÖÖÀàËÆÒÕÊõ´´×÷µÄÄÔÁ¦»î¶¯£¬ºÍËùÓеÄÒÕÊõ¼Ò¡¢×÷¼ÒÃÇÒ»Ñù£¬ÔÚ×÷Æ·´òÉÏ×Ô¼ºµÄÓ¡¼Ç²¢Á÷´«ÔÚÊÀ½çÉÏÊÇÿһ¸ö´´×÷ÈËÔ±µÄÃÎÏë¡£»¥ÁªÍøÊ±´úϵĸßÊÕÈëµÄÊæÊÊÉú»î£¬Ôç¾ÅÍíÎåµÄ±àд¹«Ë¾µÄ´úÂë²¢²»ÄÜÂú×ãºÜ¶àÓм¤ÇéµÄÈí¼þ¿ª·¢ÈËÔ±µÄÃÎÏ룬ÔÙ¼ÓÉÏÎ÷·½´«Í³µÄ»ù¶½½ÌÎÄ»¯ÖÐÊ®·ÖÍÆ³çµÄ·ÖÏíºÍ½»Á÷£¬¿ªÔ´µÄ³öÏÖºÍÐËÆðÒ²¾ÍË®µ½Çþ³ÉÁË¡£½ñÌ죬¿ªÔ´Ô˶¯ÒѾ²»½ö½öÊÇһЩ¸öÈËÌì²Å³ÌÐòÔ±ÃǵÄÓÎÀÖÔ°µØ£¬¶øÊÇ·¢Õ¹³ÉΪһÏԴÈí¼þ²úÒµ¡£
1998£ºWebLogic´ò¿ªJ2EEµÄħϻ
ÎÄ/»ôÌ©ÎÈ
JavaÓïÑԵijöÏÖʹµÃ»¥ÁªÍøÂçÓÐÁËÁ¼ºÃµÄ½»»¥ÐÔÄÜ£¬µ«ÕâЩºÜ¡°¿á¡±µÄ¼¼Êõ½ö±»ÈËÃÇÈÏΪÊÇһЩС»¨ÕУ¬Ëü»¹ÎÞ·¨Ïû³ýÆóÒµ¼¶Óû§¶ÔËüµÄ»³ÒÉ¡£1998Ä꣬BEA¹«Ë¾Ðû²¼ÊÕ¹ºWebLogic¹«Ë¾£¬²¢½Ó×ÅÍÆ³öÓÉSun¹«Ë¾µÚÒ»¸öÊÚȨʹÓÃJ2EEÐí¿ÉÖ¤µÄWebLogic ServerÓ¦Ó÷þÎñÆ÷£¬Õâ¸öJava°æµÄAppServerÒ»ÍÆ³ö¾ÍÒýÆðÒµ½ç¼«´óµÄÐËȤ¡£WebLoigc ServerÒÔÆä¶Ô±ê×¼µÄÖ§³Ö¡¢Ç¿º·µÄÔËËãÄÜÁ¦ºÍ°²È«µÄ¼Ü¹¹Éè¼ÆµÈÌØÐÔÒ²ºÜ¿ìÕ÷·þÁËÄÇЩ»³ÒÉJ2EEÓ¦ÓõÄÈËÃÇ¡£ÍƳöÊг¡ºó²»µ½Ò»Ä꣬WebLogic Server¾Í³ÉΪҵÄÚµÚÒ»JavaÓ¦Ó÷þÎñÆ÷¡£
ÕâÀïÎÒÃÇÔ®ÒýһЩµ±Ê±ÖøÃû×Éѯ¹«Ë¾µÄµ÷²éÊý¾ÝÀ´ËµÃ÷ÎÊÌ⣬¡°ÔÚIDCµÄ±¨¸æÖУ¬BEAÔÚÓ¦Ó÷þÎñÆ÷ºÍ½»Ò×·þÎñÆ÷ÁìÓòÊг¡·Ý¶îµÚÒ»£»ÔÚGartnerµÄ±¨¸æÖУ¬BEA WebLogic ServerÓµÓÐÒµÄÚ×î¹ã·ºµÄEJBÓ¦Óð²×°»ù´¡£»ÔÚGiga GroupµÄ±¨¸æÖУ¬BEA WebLogic ServerÊг¡·Ý¶îÕ¼32%¡±¡£
ÒòΪӦÓ÷þÎñÆ÷Êг¡¼«´óµÄ·¢Õ¹Ç±Á¦£¬ÔÚWebLogic ServerÖ®ºó£¬ÆäËüµÄºÜ¶à¹«Ë¾Ò²ÍƳöÁË×Ô¼ºµÄAppServer£¬ÈçIBMµÄWebSphere¡¢Sun¹«Ë¾µÄiPlanetµÈ£¬Öð½¥µØÓ¦Ó÷þÎñÆ÷È¡´úÁË´«Í³ÒâÒåÉϵĸ÷ÀàÖмä¼þ£¬³ÉΪÆóÒµÓ¦ÓõĻù´¡Æ½Ì¨¡£Ó¦Ó÷þÎñÆ÷µÄ³öÏÖʹµÃJavaÓÐÁËÕæÕýÒâÒåÉϵķ¢Õ¹¡£
2002-2004: SunÓë΢ÈíµÄ·¨ÂÉÅöײ×îÖÕÒÔϲ¾çÊÕ³¡
ÎÄ/¶ñħ
2003Äê4ÔÂ2 ÈÕ£¬SunÓë΢Èí´ï³É16ÒÚÃÀÔªµÄ·¨Âɺͽ⡣Èç¹û²»ÊÇÍíÁËÒ»Ì죬Ðí¶àÈË»áÒÔΪÕâÊÇÒ»¸öÔÚ4ÔÂ1ÈÕÓÞÈ˽ڿªµÄÍæÐ¦¡£¾¡¹Üµ±Ê±ËùÓÐÈ˶¼ÏñÊÇ¿´µ½¡°Ì«Ñô´ÓÎ÷±ß³öÀ´ÁË¡±ÄÇÑùÕÅ´óÁË×ì°Í£¬µ«ÕâµÄÈ·ÊÇÊÂʵ¡£
¸ù¾ÝÁ½¼Ò¹«Ë¾´ï³ÉµÄ°æÈ¨ÐÒ飬˫·½»áΪ²ÉÓöԷ½µÄ¼¼Êõ¶øÖ§¸¶×¨Àû·ÑÓã¬Î¢ÈíÏòSunÌáǰ֧¸¶3.5ÒÚÃÀԪʹÓ÷ѣ¬SunÔò³Ðŵ£¬Èç¹ûSun¼¯³É΢ÈíµÄijЩ¼¼Êõ£¬Ò²»áÏò΢Èí¸¶¿î¡£
ºÁÎÞÒÉÎÊ£¬¡°Ë½ÏÂÁ˽ᡱµÄ·½Ê½¶ÔË«·½¶øÑÔ¶¼ÊÇ×îºÃµÄ½á¹û¡£¾ÍÔÚÐÒéÇ©ÊðµÄµ±Ì죬ÔÚÃÀ¹ú¾É½ðɽÓÉSunºÍ΢ÈíΪ¡°ÅׯúÊ®Äê¶÷Ô¹¡¢Ð¯ÊÖºÏ×÷¡°¾ÙÐеÄÐÂÎÅ·¢²¼»áÉÏ£¬¾¡¹Ü±È¶û?¸Ç´ÄûÓе½³¡£¬µ«ÕⲢûÓзÀ°ÏÖ³¡¿´ÆðÀ´Òì³£ÇáËɵįø·Õ¡£Âó¿ËÄáÀûºÍ±«¶ûĬ¸÷×Ô´©ÁËÒ»¼þÃÜЪ¸ùÖݵ×ÌØÂÉ¡°Red Wings¡±Çú¹÷Çò¶ÓµÄÔ˶¯·þ£¬²¢Ì¸¼°ÁËÒ»ÆðÔÚ¹þ·ð´óѧ¶ÁÊéµÄ¾Àú£¬Âó¿ËÄáÀû»¹Ëµ:¡°µ±Ê±ÎÒÃÇÁ½ÈËÊǷdz£ÒªºÃµÄÅóÓÑ£¬µ±È»ÎÒÃÇÒ²Óг³¼ÜµÄʱºò¡£¡±ÈËÓëÈ˵±È»¿ÉÄܳÉΪÖÕÉúµÄÖª¼º£¬µ«Êǹ«Ë¾Ó빫˾֮¼äÓеÄÖ»ÄÜÊÇÀûÒæÉϵķַֺϺϡ£
2000-2004: JBossºÍEclipse
¡ª¡ªJava¿ªÔ´Èí¼þµÄÍõÕß
ÎÄ/Īӳ
JavaºÍ¿ªÔ´¼¸ºõ¾ÍÊÇÌìÉúµÄÒ»¶Ô£¬Õâ¿ÉÒÔ´ÓÎÞ±ÈÐËÊ¢·±ÈÙµÄJava¿ªÔ´Èí¼þÉçÇøµÃµ½×ôÖ¤¡£Ä¿Ç°×îÓÐÓ°ÏìÁ¦µÄJava¿ªÔ´Èí¼þÏîÄ¿£¬ÒªÊýJBossºÍEclipse¡£¿ÉÒÔ˵£¬¼¸ºõËùÓеÄJava¿ª·¢ÈËÔ±¶¼»ñ¶à»òÉÙµÄÌýµ½¹ý»ò½Ó´¥ºÍʹÓùýËüÃÇ¡£Ç°ÕßÊÇĿǰ×îÓÅÐã¡¢Ó¦ÓÃ×îΪ¹ã·ºµÄÆóÒµ¼¶¿ªÔ´J2EEÓ¦Ó÷þÎñÆ÷£¬ºóÕßÊǹ¦ÄÜÍêÈ«¿ÉÒÔÌæ´úÉÌÒµ²úÆ·µÄJava IDE¡£¶þÕߵĸ²¸Ç¹¦ÄÜ֮ȫ¡¢Ö§³Ö¹¤¾ßÖ®¹ã¡¢×ÓÏîĿ֮¶à£¬¼¸ºõ¿ÉÒÔ½öƾ½èËüÁ©À´Íê³ÉÆóÒµÓ¦ÓõĿª·¢¹¹½¨µ½²¿ÊðʵʩµÄÈ«¹ý³Ì£¬¶øÈí¼þ¿ª·¢ÕߺͿͻ§Ò²¶¼¿ÉÒÔ×î´ó³Ì¶ÈÉÏÏíÊܸßÖÊÁ¿£¬¸ß¿É¿¿Java¿ªÔ´Èí¼þËù´øÀ´µÄµÍ³É±¾ÓÅÊÆ¡£
JBossºÍEclipseµÄ¾Þ´ó³É¹¦£¬¼¸ºõÁî¸÷×ÔÁìÓòµÄÉÌÓþºÕùÕß×¥¿ñ£¬ÆäÖÐBEAµÄWebLogicºÍIBMµÄWebSphereÔÚÉÌÒµÀûÈóÉÏÊܵ½JBossµÄ¾Þ´óÇÖÊ´£¬¶øBorlandµÄJBuilder¡¢JetBrainsµÄIDEAµÈÖî¶àÓÅÐãµÄÉÌÓÿª·¢¹¤¾ßÒ²²»µÃ²»Ãæ¶ÔEclipse¶À´óµÄÏÖʵ¡£JBossµÄCEO¼æ´´Ê¼ÈË Marc FleuryÔøÖ±ÑÔ²»»äµØ±íʾ£¬Ï£ÍûÕ¼¾ÝÊг¡Ö÷µ¼µØÎ»¡£¡°ÎÒÃÇÏ£Íû´ò°ÜIBM£¬³ÉΪÖмä¼þÁìÓòÀï×î´óµÄ³§ÉÌ¡£¡±JBossÔÚ4.0ÒÔǰ»¹Ö»ÊÇÒÔÒ»¸öGroup´æÔÚ£¬Ó¯ÀûÊÖ¶ÎÖ÷Òª¿¿·þÎñºÍÏúÊÛÎĵµ¡£µ«ÔÚ×î½ü£¬JBossÒѾ·¢Õ¹³ÉΪһ¸öÓÐÏÞ¹«Ë¾£¬²¢ÎüÄɶà¼Ò·çÏÕͶ×Ê£¬×¨×¢ÓÚ»ñÈ¡ÀûÈóΪĿ±êÖ®Ò»µÄµÚ¶þ´ú¿ªÔ´Èí¼þģʽ£¨JBoss×Ô¼º³ÆÎª¡°Professional Open Source¡±£©µÄ´´ÐºÍÔËÓª¡£ÕâÇø±ðÓÚÒÔÀíÂÛÑо¿Îª°®ºÃµÄѧԺÐÍ¿ªÔ´»ò´ó¹«Ë¾Îª»ù´¡µÄ·ÇÓ¯Àû×éÖ¯¿ªÔ´£¬ÈçLinuxºÍApache¡£µ±È»JBossµÄÕâÖÖÔËÓª·½Ê½ÊƱػᵼÖ¸ü¶àµÄ´úÂë¿ØÖÆºÍרÓÐÐÞ¸ÄȨ£¬µ«°´JBossµÄ˵·¨ÊÇÕâÑù¸üÄÜ»ñµÃÆóÒµ¿Í»§µÄÐÅÀµ¡£JBossµÄÕâÖÖģʽÊÇ·ñÄÜ»ñµÃ³É¹¦»¹ÒªÎÒÃÇÊÃÄ¿ÒÔ´ý¡£
²»¹ÜJBossºÍEclipseµÄδÀ´·¢Õ¹ÈçºÎ£¬JBossºÍEclipseµÄ³É¹¦ÒѾÈÃÎÒÃÇ¿´µ½ÁËJava¿ªÔ´Èí¼þµÄÍþÁ¦£¬×£Ô¸ËüÃÇһ·×ߺá£
2004£ºJava 5.0
ÎÄ/Īӳ
2004Äê9ÔÂ30ÈÕ£¬´úºÅΪ¡°Tiger¡±£¬Ñз¢Àúʱ½üÈýÄêµÄJ2SE 5.0·¢²¼Õýʽ°æ±¾£¬ÕâÊÇJavaƽ̨ÀúÀ´·¢²¼°æ±¾Öи͝Ã沨¼°×î´óµÄÒ»´Î¡£
×ݹÛTiger£¬¡°Ease of development¡±ÊÇÆäºËÐÄÖ÷Ì⣬ÕâÒ»µã×ÅÖØÌåÏÖÓÚÓïÑÔÌØÐÔÉϵĸĽø£¬ÕâÔںܴó³Ì¶ÈÉÏ£¬¼ò»¯ÁË¿ª·¢ÈËÔ±ÈÕ³£µÄ±à³ÌÈÎÎñ£¬ÒÔÍùһЩËöËéµÄÊÖ¹¤ÀͶ¯¶¼´úÖ®ÒÔÇáËÉ×ÔÈ»£¬¶øÓÖ°²È«¿É¿¿µÄ×Ô¶¯»¯ÊµÏÖ¡£ÆäÖеÄ×¢½â¹¦ÄÜ£¬ÒÔ¼°ËæÖ®¶øÀ´µÄÉùÃ÷ʽ±à³Ì£¬»¹¶Ô¹¹ÖþÓÚJ2SE 5.0Ö®ÉϵÄJ2EE 5.0²úÉúÁ˾޴óÓ°Ïì¡£¾¡¹ÜTigerÔÚÓïÑÔÌØÐÔÉÏ×öÁ˺ܴóµÄ¶¯×÷£¬µ«×÷ΪJava¼¼ÊõµÄ»ù´¡Ö§³Å£¬ÕâЩ¸Ä¶¯¶¼ÊÇÉî˼ÊìÂǵĽá¹û¡£
Tiger·¢²¼ÖÁ½ñÒ²Óдó°ëÄêÁË£¬ÄÇôSunÓÖÊÇÈçºÎ¹æ»®J2SEµÄδÀ´À¶Í¼µÄÄØ£¿¾ÝϤ£¬J2SEµÄÏÂÁ½¸ö°æ±¾·Ö±ðÊÇ´úºÅΪ¡°Mustang¡±µÄJ2SE 6.0ºÍ´úºÅΪ¡°Dolphin¡±µÄJ2SE 7.0£¬Ô¤¼ÆMustang½«ÓÚÃ÷Äê·¢²¼¡£ÔÚÎüÈ¡ÁËTigerÑз¢ÖÜÆÚ¹ý³¤µÄ½Ìѵ֮ºó£¬Sun¸±×ܲÃGraham Hamilton±íʾ£¬MustangµÄ·¢²¼ÖÜÆÚ½«²»»áÄÇô³¤¡£²¢ÇÒ£¬Sun»¹½«¡°Becoming more open¡± ×÷ΪMustangµÄÖ÷ÌâÖ®Ò»¡£Î´À´JCP¶ÔJava¼¼ÊõµÄÓ°Ï콫»áÓú¼ÓÉîÈ룬¶øÕû¸öÑз¢¹ý³ÌÒ²½«»áÓú¼Ó͸Ã÷¡£MustangÔÚÕýʽ·¢²¼Ç°µÄÄÚ²¿°æ±¾Ò²»áÂ½Ðø¼ûÖîÓÚÖÚ£¬Èç´Ë£¬¹ã´óJava¿ª·¢Õß±ã¿ÉÒÔ¸ü¼Ó¼°Ê±µÄÁ˽⵽Java·¢Õ¹µÄ×îÐÂÇé¿ö¡£ÔÚÓïÑÔ²ãÃæÉϵÄÀ©Õ¹ÒÀÈ»»á±È½Ï½÷É÷£¬±ÈÈçÏñAOPÕâÑùµÄµ±ÏÂÈÈÃż¼Êõ£¬ÒÀÈ»²»Ì«¿ÉÄÜ»á¼ûÖîÆäÖС£¾ÝHamiltonËùÑÔ£¬Ò»¸öÓпÉÄܱ»ÒýÈëµÄÓï·¨ÌØÐÔ±»³Æ×÷¡°friends¡±import»úÖÆ£¬Ëü½«Ê¹Óɶà¸ö°ü×é³ÉµÄ´óÐÍÏîÄ¿±äµÃÒ×ÓÚ¹ÜÀí¡£
Ê®´óÈËÎï
James Gosling : JavaÖ®¸¸
ÎÄ/ÌÕÎÄ
×÷ΪJavaÖ®¸¸£¬James GoslingµÄÃû×Ö¿ÉνÊǶúÊìÄÜÏê¡£µ±ÈËÃÇÆÀÂÛÒ»ÖÖ±à³ÌÓïÑÔʱ£¬×Üϲ»¶ÉÓ´ø×ŰÑϵ°µÄĸ¼¦Ò»Æð´øÉÏ¡£Java×öΪÖйúµÄ±à³ÌÓïÑÔѧϰÕß²Í×ÀÉÏÓÐÏÞµÄÄÇô¼¸Ñù²ÍµãÖеÄÁ÷Ðпîʽ£¬×ÔÈ»ÊÇÈÃJames Gosling·ç¹â²»ÒÑ¡£ËäÈ»James GoslingÏÖÔÚÒѾ²»ÊÇÁìµ¼Java·¢Õ¹³±Á÷µÄÁì¾üÈËÎïÁË£¬×öΪSunµÄ¿ª·¢Õß²úÆ·×éµÄCTO£¬ÔõôËãÀ´Ò²ÊÇÉí¾Ó¸ßλÁË£¬Ë×ʲøÉí°É£¬µ«ÊÇÕâ²¢²»·Á°Æä¶ÔÓÚJavaÒ»Èç¼ÈÍùµÄ°®»¤£¬±í´ïן÷ʽ¸÷ÑùÏÊÃ÷µÄ¹Ûµã£¬Òý·¢Ò»³¡ÓÖÒ»³¡µÄÕùÂÛ¡£
James GoslingÊǺܰ®JavaµÄ¡ª¡ªÊǰ¡£¬ÄÄÓе±¸¸Ä¸µÄ²»°®×Ô¼ºµÄº¢×ÓµÄÄØ¡£James GoslingÒ²ÊǺܰ®SunµÄ¡ª¡ªÊǰ¡£¬ÄÄÓе±Áìµ¼µÄ²»°®×Ô¼ºµÄ¹«Ë¾µÄÄØ¡£ÓÚÊÇÎÒÃÇÔÚÅúÆÀ.NETµÄ°²È«ÐԵĶÓÎéǰͷ£¬ÔÚ°ýÑïJavaÐÔÄܵĶÓÎéǰͷ£¬ÔÚÅê»÷SWT¿ªµ¹³µµÄ¶ÓÎéǰͷ£¬ÔÚ¸øNetBeans´ó³ªÔÞ¸èµÄ¶ÓÎéǰͷ£¬ÎÒÃǶ¼¿´µ½ÁËJames GoslingµÄÉíÓ°¡£ÎÞÂÛ¶Ô´í¡¢Æ«¼û»òÕß¹ÌÖ´£¬ÖÁÉÙ˵Ã÷ÁËGoslingµÄÏÊÃ÷¸öÐÔË¿ºÁûÓÐÊܵ½ÄêÁäµÄÓ°Ïì¡£Ò²ÐíÒ²Ö»ÓÐÕâÖÖÌì²Å¶øÆ«Ö´µÄÈËÎï²ÅÄÜ´´Ôì³öJavaÕâ°ãΰ´óµÄÓïÑÔÀ´°É¡£
Bill Joy : Èí¼þÒµµÄ°®µÏÉú
ÎÄ/Ðìê»
JoyÉúÓÚ1954Ä꣬1982ÄêÓëVinod Khosla, Scott McNealyºÍAndy BechtolsheimÒ»Æð´´½¨ÁËSun Microsystems£¬²¢´ÓÄÇʱÆðµ£ÈÎÊ×ϯ¿ÆÑ§¼Ò£¬Ö±µ½2003ÄêÀ뿪¡£ËûÊÇһλÁîÈ˳羴µÄÈí¼þÌì²Å£¬ËûÔÚÈí¼þºÍÓ²¼þµÄÀúÊ·ÉÏÁôÏÂÁËÎÞÊýÁîÈËÑöÖ¹µÄ´«Ææ¡£
ÔÚÉϸöÊÀ¼Í80Äê´úÔçÆÚ£¬DARPAÓëBBN´ï³ÉÐÒ飬׼±¸½«Vinton CerfºÍBob KahnÉè¼ÆµÄTCP/IPÐÒéÌí¼Óµ½Berkeley UNIXÖС£Bill Joy±»Î¯ÅÉÀ´Íê³ÉÕâÏîÈÎÎñ£¬È»¶øËûÈ´¾Ü¾ø½«BBNµÄTCP/IPÐÒéÕ»Ìí¼Óµ½BSDÖУ¬ÒòΪÔÚËûµÄÑÛÖÐBBNµÄTCP/IPʵÏÖ»¹Ô¶²»¹»ºÃ£¬ÓÚÊÇËû¾ÍдÁËÒ»¸ö¸ßÐÔÄܵÄTCP/IPÐÒéÕ»¡£John Gage»ØÒäµÀ£¬¡°BBNºÍDARPAÇ©ÊðÁ˾޶îºÏͬÀ´ÊµÏÖTCP/IPÐÒ飬Ȼ¶øËûÃǵÄÔ±¹¤Ëù±àдµÄ´úÂëԶûÓÐÒ»¸öÑо¿ÉúËù×öµÄºÃ¡£ÓÚÊÇËûÃÇÑûÇëBill Joy²Î¼ÓËûÃǵÄÒ»¸ö»áÒ飬ÕâλÑо¿Éú´©×ÅÒ»¼þT-Shirt¾Í³öÏÖÁË£¬ËûÃÇѯÎÊËû£¬¡®ÄãÊÇÈçºÎ×öµ½µÄÄØ£¿¡¯Bill»Ø´ð˵£¬¡®ÕâÊǷdz£¼òµ¥µÄÒ»¼þÊ£¬Äã¶ÁÒ»ÏÂÐÒéÈ»ºó¾Í¿ÉÒÔ±àÂëÁË¡¯¡±¡£³ýÁËTCP/IPÐÒ飬»ùÓÚ·ÖÒ³µÄÐéÄâÄÚ´æÏµÍ³×îÔçÒ²ÊÇÓÉBill JoyÌí¼Óµ½Berkeley UNIXÄں˵±Öеġ£Í¬Ê±Ëû»¹ÊÇvi¡¢csh¡¢ÔçÆÚPascal±àÒëÆ÷µÄ×÷Õß¡£
¹ØÓÚBill Joy¾ªÈ˵ÄÈí¼þ²ÅÄÜÁ÷´«×î¹ãµÄÒ»¸ö´«ÆæÊÇ£¬¾Ý˵ËûÔÚÉÏÑо¿ÉúµÄʱºò£¬Ïë¿´¿´×Ô¼ºÄܲ»ÄÜдһ¸ö²Ù×÷ϵͳ³öÀ´£¬ÓÚÊǾÍÔÚÈýÌìÀïдÁËÒ»¸ö·Ç³£¼òª£¬µ«ÊÇ¿ÉÒÔʹÓõÄUnixϵͳ, ´«Ëµ¾ÍÊÇBSDµÄǰÉí¡£ËäÈ»Èç´Ë¿äÕŵIJÅÇéÁîÈËÄÑÒÔÖÃÐÅ£¬µ«ÊÇ¿¼Âǵ½Ö÷½ÇÊÇBill Joy£¬»¹ÊÇÓÐÒ»¶¨µÄ¿ÉÐŶȵġ£Bill Joy˶ʿ±ÏÒµÖ®ºó£¬¾ö¶¨µ½¹¤Òµ½ç·¢Õ¹£¬ÓÚÊǾ͵½Á˵±Ê±Ö»ÓÐÒ»¼ä°ì¹«ÊÒµÄSun, Ëû×÷ΪÖ÷ÒªÉè¼ÆÕß²ÎÓëÁËSPARC΢´¦ÀíÆ÷µÄÉè¼Æ£¬¸ºÔðÉè¼Æ×îΪ¹Ø¼üµÄÒ»²¿·Öµç·¡£ÕâÑù¼æ¾«ÈíÓ²¼þµÄÌì²ÅʵÔÚÊÇÈÃÈ˲»µÃ²»Åå·þ°¡¡£1995Ä꣬Sun·¢²¼Á˺䶯ÊÀ½çµÄJavaÓïÑÔ¡£µ±È»£¬Bill Joy¶ÔJavaÒ²×÷³öÁ˲»ÉٵűÏ×£¬Ê×ÏÈÊÇJINI¡ª¡ªÒ»ÖÖÕë¶Ô·Ö²¼Ê½·þÎñµÄ»ù´¡Á¬½Ó¼¼Êõ¡£ÈκοÉÒÔÄÚǶJVMµÄµç×ÓÉ豸¶¼¿ÉÒÔͨ¹ýJINIÏ໥Á¬½Ó£»JXTAÊÇ»ùÓÚJavaµÄP2PÐÒ飬ÔÊÐí»¥ÁªÍøÉϵÄÈí¼þ½øÐеã¶Ôµã½»Á÷ºÍÐ×÷¡£
Õâ¸öÆäò²»ÑïµÄÊݸ߸ö£¬ÓÐ×ÅÁèÂÒµÄÑÇÂéɫͷ·¢£¬±»¡¶²Æ¸»¡·ÔÓÖ¾ÓþΪ¡°ÍøÂçʱ´úµÄ°®µÏÉú¡±µÄ¼¼Êõ¿ñÈË£¬Ôڶ̶̵ĶþÊ®Äê¼ä£¬´´ÔìÁËÎÞÊýÁîÈËÐ͝µÄÈí¼þ¡£ÔÚMITµÄBBSÉÏÔøÓÐÒ»¸öÌû×Ó£¬ËµÎ¢Èíµç»°ÃæÊÔÓÐÒ»µÀÌ⣬ÎÊ¡°Who do you think is the best coder, and why?¡±ËäÈ»»Ø¸´µÄÌû×ÓÖдó¼Ò¶¼ÉùÃ÷ÁоٵÄbest coderÅÅÃû²»·ÖÏȺó£¬È»¶ø´ó¶àÊýÈËÈÔ°ÑBill JoyÁÐÔÚµÚһ룬»òÐí¿ÉÒÔ´ÓÒ»¸ö²àÃæÑéÖ¤Bill JoyÔÚ¹ã´óProgrammerÐÄÄ¿ÖеĵØÎ»°É¡£
Joshua Bloch : Java 2 Ԫѫ
ÎÄ/Īӳ
ÔçÔÚ1996Ä꣬ÊÊ·êJava¸Õ¸Õո¶ͷ½Ç£¬ÄêÄÚºÃÊÂÁ¬Á¬¡£ÏÈÊÇ1Ô·ݷ¢²¼JDK 1.0£¬È»ºóÊÇ5Ôµ×ÔھɽðɽÕÙ¿ªÊ×½ìJavaOne´ó»á£¬ÄêÄ©ÓÖÊÇJDK 1.1½ô¸úÆäºó¡£ÕýÊÇÔÚJava¼¼ÊõÈç»ðÈçݱ¡¢´óչȽŵı³¾°Ö®Ï£¬Joshua BlochÀ´µ½ÁËSun£¬¿ªÊ¼ÁËËû´øÁìJavaÉçÇø²½Èë¡°åÈÄÏÃÀµØ¡±µÄÂþ³¤Àú³Ì¡£
ºÜ¿ì£¬Ëû±»´Ó°²È«×éµ÷ÈëºËÐÄÆ½Ì¨×飬´ÓʵײãAPIÉè¼Æ¡£ÖÁ´ËÒÔºó£¬Ã¿·êJDKµÄÖØ´ó°æ±¾·¢²¼£¬×ÜÄÜÔÚÆäÖмûµ½JoshuaµÄ¡°Ãî±Ê¡±¡£JDK 1.1ÖеÄjava.math¡¢1.4ÖеÄassertions£¬»¹Óдó¼ÒËùÊìʶµÄCollections Framework½ÔÊÇJoshuaÒ»ÊÖ´òÔì¡£ÆäÖеÄCollections Framework»¹»ñµÃÁ˵±ÄêµÄJolt´ó½±¡£µ½ÁËJ2SE 5.0Ñз¢½×¶Î£¬ÉíΪƽ̨×é¹¹¼ÜʦµÄJoshua½ÓÕÆÁËTiger´óÆì£¬ÆäºËÐĵØÎ»ÒÑÈ»ÎÞÈË¿ÉÒÔÌæ´ú¡£×÷ΪTigerµÄ´úÑÔÈ˺ÍÁì·ÈË£¬Ã»ÓÐ˱ÈJoshua¸üÇå³þTiger¡£ÏàÐÅ´ó¼ÒÒ»¶¨»¹¼ÇµÃJoshuaµ±Äê·ÂЧӢ¹úÊ«ÈËWilliam BlakeËù×öµÄÓ½TigerÊ«°ËÊ×£¬ÓÅÑŵıʵ÷£¬Í¸³ö´óʦÉîºñµ×Ô̵Äͬʱ£¬Ò²µÀ³öÁËTigerµÄ¼¸´óÖØÒªÌØÐÔ£¬ÕâÐ©ÌØÐÔÊÇ×ÔJDK 1.1ÒýÈëInner ClassÒÔÀ´£¬Java×î´óµÄÓï·¨¸Ä½ø¡£
Java·çÓêÊ®Ä꣬´ÓJDK 1.1µ½J2SE 5.0£¬JoshuaʵÔÚ¹¦²»¿Éû¡£ÄѹÖÓÐÈËÏ·ÑÔ£¬¼ÙÈ罫James Gosling±È×÷JavaÖ®¸¸£¬ÄÇôJoshua¾ÍÊÇÒ»ÊÖ½«Java ¡°²¸Óý¡±³ÉÈ˵ÄJava֮ĸ¡£Joshua¶ÔJavaµÄ¹±Ï×»¹²»Ö¹ÓÚJDK£¬ÌáÆðËûµÄ´ó×÷¡¶Effective Java¡·£¨Addison Wesley, 2001£©£¬ÏàÐÅJava·ÛË¿ÃÇÒ»¶¨¶úÊìÄÜÏê¡£¸ÃÊéÈÙâß2002Äê¶ÈJolt´ó½±£¬ÇÒ±¸ÊÜJames GoslingÍÆ³ç¡£ÊéÖÐ57ÌõÆÄ¾ßʵÓüÛÖµµÄ¾Ñ鹿Ôò£¬À´×ÔJoshua¶àÄêÀ´ÔÚJDK¿ª·¢¹¤×÷ÖУ¬ÓÈÆäÊÇCollections FrameworkÉè¼ÆÖеÄʵ¼ùÐĵ㬸÷¸öÓÐÀíÓоݣ¬ÆÊÎöÉîÈ룬Ҳ×ã¼ûÆäÉîºñ¹¦Á¦¡£¸ÃÊé¶ÔJavaÉçȺµÄÓ°Ï죬ÓÌÈçC++ÉçȺÖеġ¶Effective C++¡·¡£Joshua¶ÔJCPµÄ¹±Ï×Ò²²»Ð¡¡£ËûÊÇJSR201ºÍJSR175µÄÁìµ¼Õߣ¬Ç°Õß°üº¬ÁËTigerËÄ´óÓïÑÔÌØÐÔ£¬ºóÕßÔòΪJavaÌṩÁËÔªÊý¾ÝÖ§³Ö¡£´ËÍ⣬Ëû»¹ÊÇJSR166µÄ·¢ÆðÈËÖ®Ò»£¨¸ÃJSRÓÉDoug LeaÁìµ¼£©£¬²¢ÇÒÊÇÐí¶àÆäËûJSRµÄ²ÎÓëÕß¡£JoshuaĿǰÊÇJCPΪÊý²»¶àµÄ¼¸¸öÖ´ÐÐίԱ»á³ÉÔ±Ö®Ò»¡£
Joshua Bloch¸øÈ˵ÄÓ¡ÏóÊÇǫѷƽºÍ£¬ÐÐʵ͵÷¶ø²»Ï²Å×Í·Â¶Ãæ£¬Ò»¸öµäÐ͵ļ¼ÊõÈËÔ±ºÍʵ¸É¼Ò¡£²»¹ý¼´±ãÈç´Ë£¬Ò²Ë¿ºÁ²»»á¼õÈõËû¶ÔJava¼¼ÊõµÄ׿Խ¹±Ï׺ͶÔJavaÉçÇøµÄ¾ø¶ÔÓ°ÏìÁ¦¡£ÓÐÈË˵£¬Èç¹ûËûÄܸüÕÃÏÔһЩ£¬¾ÍºÜÓпÉÄܳÉΪJava¿ª·¢ÕßÖеÄÁì¾üÈËÎ¾ÍÓÐÈçDon BoxÖ®ÓÚ΢ÈíÉçȺ¡£
2004Äê7Ô³õ£¬¾ÍÔÚTiger·¢²¼ÔÚ¼´Ö®Ê±£¬¾ÍÔÚJusha Bloch¸Õ¸ÕÈÙ»ñSun¡°½Ü³ö¹¤³Ìʦ£¨Distinguished Engineer£©¡±µÄ³ÆºÅ֮ʱ£¬ËûͻȻÀ뿪Sun¶øÈ¥ÁËÕýÖµ·¢Õ¹Ì¬ÊÆÑ¸Ã͵ÄGoogle¡£µ±ËûÀ뿪SunµÄÏûÏ¢ÔÚTSS·¢²¼Ö®ºó£¬ÖÚ¶àÓµõ»±í´ïÁË»³ÄîÓë²»ÉáÖ®Çé¡£Ò»Äê¹ýÈ¥ÁË£¬ÎÒÃÇ»¹Ã»ÓлñÖªJoshuaµÄÈκνüÎÅ£¬ËƺõÓÖÊÇËûÐÐʵ͵÷µÄÒ»¹á×÷·çËùÖ£¬²»ÖªËûÔÚGoogle×´¿öÈçºÎ¡£Ï£ÍûJoshuaÒÀÈ»ÄܼÌÐø¡°Ä¦Î÷δ¾¡µÄÊÂÒµ¡±£¬ÒÔËûµÄÓ°ÏìÁ¦Íƶ¯JavaÉçȺ¼ÌÐøÇ°ÐС£¾Ý³Æ£¬¡¶Effective Java¡·µÄÏÂÒ»°æ»á¼ÓÈëJava 5.0µÄ²¿·Ö£¬ÈÃÎÒÃÇÇÌÊ×ÒÔ´ý°É¡£
Bruce Eckel : ¹¦Ñ«×¿ÖøµÄ»ú»áÖ÷Òå·Ö×Ó
ÎÄ/ÃÏÑÒ
Bruce EckelÔ±¾ÊÇһλÆÕͨµÄ»ã±à³ÌÐòÔ±¡£²»ÖªµÀÊÇʲôÒòÔµ¼Ê»á£¬ËûתÐÐȥд¼ÆËã»ú¼¼ÊõͼÊ飬ȴÔÚ´Ë´óºì´ó×Ï¡£Ëû³É¹¦µÄÃØ¾÷²»ÍâºõÁ½µã£º³¬È˵ıí´ïÄÜÁ¦ºÍ²¶×½»ú»áµÄÄÜÁ¦¡£Ëû×îÔçµÄÒ»±¾ÊéÊÇ1990Äê´ú³õÆÚµÄ¡¶C++ Inside & Out¡·£¬Ëæºó£¬ÔÚ1995ÄêËûд³öÁ˸ıä×Ô¼ºÃüÔ˵ġ¶Thinking in C++¡·¡£Èç¹û˵Õâ±¾Êé³ä·Ö±íÏÖÁËËû×÷ΪÓÅÐã¼¼Êõ×÷¼ÒµÄÒ»Ãæ£¬ÄÇÃ´ËæºóËûд×÷¡¶Thinking in Java¡·²¢Òò´Ë²½Èë¶¥¼¶¼¼Êõ×÷¼ÒÐÐÁУ¬ÔòÌåÏÖÁËËû×÷ΪÓÅÐãµÄ»ú»áÖ÷Òå·Ö×ÓÉÆÓÚ²¶×½»ú»áµÄÁíÒ»Ãæ¡£Ð´×÷ÖÐÉó¤¾ÙdzÏÔÖ±½ÓµÄСÀý×ÓÀ´ËµÃ÷ÎÊÌ⣬ÓïÑÔÉú¶¯£¬æ¸æ¸µÀÀ´£¬ÌرðÊʺÏÓÚȱ·¦Êµ¼ù¾ÑéµÄ³õѧÕß¡£Òò´Ë¡¶Thinking in Java¡·Ù²È»³ÉΪÌì×ÖµÚÒ»ºÅµÄJava½Ì¿ÆÊ飬¶ÔJavaµÄÆÕ¼°Óë·¢Õ¹·¢»Ó×Ų»¿ÉºöÂÔµÄ×÷Óᣲ»¹ý¹«ÔʵØËµ£¬Bruce EckelµÄÊéÇ·Éî¿Ì¡£±ÈÈçÔÚ¡°Thinking in¡¡±ÏµÁÐÖжÔÉè¼ÆÄ£Ê½µÄ½â˵¾ÍÓÐʧ´óʦˮ׼¡£ÕâÒ»·½ÃæÊÇÒòΪÊéµÄ¶¨Î»·Ç³£ÇåÎú£¬ÁíÒ»·½ÃæÒ²ÊÇÒòΪBruceÌ«¹ý·ÖÐĸϳ±Á÷£¬Î´ÄÜÉîÈëÖ®¹Ê¡£TIJÖ®ºó£¬ËûÔ¤ÑÔPython½«»ð£¬¾Í´Ò´ÒÅÜȥдÁ˰뱾¡¶Thinking in Python¡·¡£ºóÀ´Python²¢Î´ÈçÆÚ¶øÍú£¬ÓÚÊÇËûÒ²¾Í°ÑÊé¸åÁÌÔÚÄÇÀï²»¹ýÎÊÁË£¬»ú»áÖ÷ÒåµÄÒ»Ãæ±©Â¶ÎÞÒÅ¡£ÎÒÃÇÒ²¿ÉÒÔÉÆÒâµÄ²Â²âһϣ¬ËûµÄÏÂÒ»¸öͶ»ú¶ÔÏó»áÊÇÊ²Ã´ÄØ£¿Ruby£¿.NET£¿MDA£¿×ÜÖ®£¬ÊÇʲôÎÒ¶¼²»Ææ¹Ö¡£
Rickard Oberg :J2EEÆæ²Å
ÎÄ/ÐܽÚ
ObergµÄ×÷Æ·ºÜ¶à£¬Á÷ÐеĴúÂëÉú³É¹¤¾ßXDocletºÍMVC¿ò¼ÜWebWork¶¼³ö×ÔËûµÄÊֱʡ£ÕâÁ½¸ö¿ò¼ÜÓÐÒ»¸ö¹²Í¬µÄÌØµã£¬¼´ËüÃǵŦÄÜËäÈ»¼òµ¥£¬µ«Éè¼Æ¶¼·Ç³£ÓÅÑÅÁé»î£¬Äܹ»ºÜ·½±ãµØÀ©Õ¹Ð¹¦ÄÜÉõÖÁÒÆÖ²µ½Ð»·¾³ÏÂʹÓá£ÓÅÑŵÄÉè¼ÆÔ´×ÔObergµÄ¹ýÈ˲Żª£¬¼òµ¥µÄ¹¦ÄÜÔòÕÛÉä³öËûÍæÊÀ²»¹§µÄÈËÉú̬¶È¡£ÕýÊÇÕâÁ½ÖÖÌØÖʵÄÈںϣ¬²ÅÔì¾ÍÁËÕâ¸ö²»ÊÀ³öµÄÆæ²Å¡£
1999Ä꣬JDK 1.3·¢²¼£¬ÆäÖдøÀ´ÁËÒ»¸öÖØÒªµÄÐÂÌØÐÔ£º¶¯Ì¬´úÀí£¨Dynamic Proxy£©¡£µ±ËùÓÐÈ˶¼»¹ÔÚ¶ÔÕâÏîм¼ÊõµÄÓÃ;¸Ðµ½ÃÔ»óʱ£¬Oberg·¢ÏÖÓÃËü±ã¿ÉÒÔÇáËɹ¥¿ËEJBÈÝÆ÷ʵÏÖÖеÄһЩÄѹء£ÕâÒ»·¢ÏֵIJúÎï¾ÍÊÇÒ»±¾¡¶Mastering RMI¡·£¬ÒÔ¼°´óÃû¶¦¶¦µÄJBossÓ¦Ó÷þÎñÆ÷¡£µ«ObergºÜ¿ìÓÖÈÃÊÀÈ˼ûʶÁËËûµÄÍæÊÀ²»¹§¡£ÓÉÓÚºÍ×ܾÀíMarc FleuryÔÚ¾ÓªÀíÄîÉϲ»ºÏ£¬Oberg±§Ô¹¡°·¨¹úµÄÌì¿Õ×ÜÈÃÎҸе½Ñ¹ÒÖ¡±£¬Ë¦ÊÖÀ뿪ÁË×Ô¼ºÒ»ÊÖ´òÔìµÄJBoss¡£´ËºóµÄ¼¸ÄêÀËûºÍÀÏÓÑHani Suleiman²»¶ÏµØ¶ÔJBossµÄ¡°×¨Òµ¿ªÔ´¡±Ä£Ê½ºÍMarc FleuryµÄÉÌÈËζµÀÀä³°ÈÈ·í£¬ÈÃÖÚÈËΪËûµÄº¢×ÓÆø¶óÍó̾Ϣ¡£
2002Äê10Ô£¬Î¢ÈíÍÆ³öPetstoreʾÀýÓ¦ÓõÄ.NET°æ±¾£¬²¢Ðû³ÆÆäÐÔÄܱÈJava Petstore¸ß³öÊý±¶¡£ÕýÊÇObergÉîÈë·ÖÎöÕâ¸öʾÀýÓ¦ÓõÄÔ´´úÂ룬ÔÚµÚһʱ¼äÖ¸³öËü´óÁ¿ÔËÓÃÁËSQL ServerרÓеÄÌØÐÔ£¬ÐÔÄܶԱȸù±¾²»¾ß²Î¿¼¼ÛÖµ¡£ºóÀ´ObergÓÖÏȺó¹Ø×¢ÁËAOPºÍIoCÈÝÆ÷£¬Á½Õß¶¼³ÉΪÁËJ2EE¼Ü¹¹µÄг衣
Doug Lea : ÊÀ½çÉ϶ÔJavaÓ°ÏìÁ¦×î´óµÄ¸öÈË
ÎÄ/KIT
Èç¹ûITµÄÀúÊ·£¬ÊÇÒÔÈËΪÖ÷Ìå´®½ÓÆðÀ´µÄ»°£¬ÄÇô¿Ï¶¨ÉÙ²»ÁËDoug Lea¡£Õâ¸ö±ÇÁº¹Ò×ÅÑÛ¾µ£¬Áô×ŵÂÍõÍþÁ®¶þÊÀµÄºú×Ó£¬Á³ÉÏÓÀÔ¶¹Ò×ÅǫѷëïÌóЦÈÝ£¬·þÎñÓÚŦԼÖÝÁ¢´óѧOswego·ÖУ¼ÆËãÆ÷¿ÆÑ§ÏµµÄÀÏ´óÒ¯¡£
˵ËûÊÇÕâ¸öÊÀ½çÉ϶ÔJavaÓ°ÏìÁ¦×î´óµÄ¸öÈË£¬Ò»µãÒ²²»Îª¹ý¡£ÒòΪÁ½´ÎJavaÀúÊ·ÉϵĴó±ä¸ï£¬Ëû¶¼¼ä½Ó»òÖ±½ÓµÄ°çÑÝÁ˾Ù×ãÇáÖØµÄ½ÅÉ«¡£Ò»´ÎÊÇÓÉJDK 1.1µ½JDK 1.2£¬JDK1.2ºÜÖØÒªµÄÒ»Ïîд´¾Ù¾ÍÊÇCollections£¬ÆäCollectionµÄ¸ÅÄî¿ÉÒÔ˵³ÐÏ®×ÔDoug LeaÓÚ1995Äê·¢²¼µÄµÚÒ»¸ö±»¹ã·ºÓ¦ÓõÄcollections£»Ò»´ÎÊÇ2004ÄêËùÍÆ³öµÄTiger¡£Tiger¹ãÄÉÁË15ÏîJSRs(Java Specification Requests)µÄÓï·¨¼°±ê×¼£¬ÆäÖÐÒ»Ïî±ãÊÇJSR-166¡£JSR-166ÊÇÀ´×ÔÓÚDoug±àдµÄutil.concurrent°ü¡£
ÖµµÃÒ»ÌáµÄÊÇ: Doug LeaÒ²ÊÇJCP (JavaÐ¡ÇøÏîÄ¿)ÖеÄÒ»Ô±¡£
DougÊÇÒ»¸öÎÞ˽µÄÈË£¬ËûÉîÖª·ÖÏí֪ʶºÍ·ÖÏíÆ»¹ûÊDz»Ò»ÑùµÄ£¬Æ»¹û»áÔ½·ÖÔ½ÉÙ£¬¶ø×Ô¼ºµÄ֪ʶ²¢²»»áÒòΪ¸øÁ˱ðÈ˾ͼõÉÙÁË£¬ÖªÊ¶µÄ·ÖÏí¸üÄܼ¤µ´³ö²»Ò»ÑùµÄ»ð»¨¡£¡¶Effective JAVA¡·Õâ±¾Java¾µäÖ®×÷µÄ×÷ÕßJoshua Blosh±ãÔÚÊéÖÐÌØ±ð¸ÐлDougÊÇ´ËÊéÖÐÐí¶à¹¹ÏëµÄ¹²Ãù°å£¬¸ÐлDoug´ó·½·ÖÏí·á¸»¶øÓÖ±¦¹óµÄ֪ʶ¡£Õâλ²¢·¢±à³ÌµÄ´óʦ¼¶ÈËÎïµÄÏÂÒ»²½£¬½«»á´ø¸øJavaÔõÑùµÄ³å»÷£¬²»½ûÁîÈËÆÁÏ¢ÒÔ´ý¡£
Scott McNealy :SUNÊ®ÄêÀ´µÄÕÆ¶æÕß
ÎÄ/KIT
McNealy£¬SunµÄCEO¡¢×ܲüæ¶Ê³¤¡£ËûÔø¾¿ñ°ÁµÄ˵:¡°´Ý»Ù΢ÈíÊÇÎÒÃÇÿ¸öÈ˵ÄÈÎÎñ¡£¡±ÕâλӢÓµĹè¹ÈÓ¢ÐÛ£¬Ëƺõ´øÍ·ÆðÒ壬ÊÔͼ×éÖ¯Ò»¸ö·´Î¢ÈíÕóÏßÁªÃË£¬ÒÔ¶Ô¿¹Î¢ÈíÕâ¹ÉÅÓ´óµÄÍÐÀ˹¶ñÊÆÁ¦¡£Ëûʱ³£¿Ú³ö¾ªÈËÖ®ÓÔÚ¹«¿ª³¡ºÏ´óËÁµÄÅúÆÀ΢Èí£¬²¢Ôø¾ËµÎ¢ÈíµÄ.NETÊÇ.NOT¡£
Scott McNealyÏȺó±ÏÒµÓÚ¹þ·ð´óѧ¼°Ê·µ¤·ð´óѧ£¬·Ö±ð³ÖÓо¼Ãѧѧʿѧλ¼°Æó¹Ü˶ʿ¡£1982ÄêMBA±ÏÒµµÄËûºÍÈý¸öͬѧ¹²Í¬ºÏ»ï´´½¨ÁËSun£¬²¢ÓÚ1984Äê³ÉΪSunµÄÖ´Ðй١£¡°ÒªÃ´ÍÌÁ˱ðÈË£¬²»È»¾Í±»±ðÈËÍÌÁË¡±ÊÇScott McNealyµÄÃûÑÔ¼֮һ¡£ËûÉó¤ÒÔÐÅÄî´ø¶¯Ô±¹¤£¬¹ÄÎèÊ¿Æø¡£¼«¸»×ÔÐŵÄËû£¬¶ÔÓÚÈ϶¨µÄÊ£¬×ÜÊǼá³Ö×Ô¼ºµÄÏë·¨£¬Òò´ËÓÐÈËÐÎÈÝËûÊÇÒ»¸ö¸Õã¹×ÔÓõľö²ßÕß¡£
ÉíΪSunÕâËÒ´¬µÄÕÆ¶æÕߣ¬Scott McNealyÄܹ»¿´¶àÔ¶£¬Sun¾ÍÄÜ×ß¶àÔ¶¡£Scott McNealyÈÏΪ½«À´Èí¼þ½çÊÇÒ»¸öÖ»ÓзþÎñ£¬Ã»ÓвúÆ·µÄÊÀ´ú¡£ËûÏ£Íû´òÔì³öSun²»ÊÇÒ»¸ö´¿¿¿Ó²¼þ׬ǮµÄ¹«Ë¾¡£´ÓOpen Sourceµ½Open Solaris£¬SunÏ£Íû¿ÉÒÔ³ÉΪÌṩÕûºÏÐÔ½â¾ö·½°¸µÄ·þÎñ³§ÉÌ¡£Solaris 10 + UltraSPARCÊÇ·ñ¿ÉÒÔÏñScott McNealyÏ£ÍûµÄÊÇÏÂһƥÊÀ¼ÍºÚÂíÄØ£¿SunÊÇ·ñÄÜÒԹɼÛÀ´Ö¤Ã÷»ª¶û½Ö·ÖÎöʦ¼°ÆÕÂÞ´óÖڵķ̶ÌÁ÷³¤£¿Scott McNealyÊÇ·ñÄÜ´øÁì×ÅSun³ÉΪ¼Ì΢ÈíÖ®ºóµÄÏÂÒ»¸ö¾ÞÈË£¬Ò»³¡³¡IT½çµÄÕù°ÔÕ½ÖµµÃÎÒÃÇÊÃÄ¿ÒÔ´ý¡£
Rod Johnson : ÓÃÒ»±¾Êé¸Ä±äÁËJavaÊÀ½çµÄÈË
ÎÄ/ ÁõÌú·æ
RodÔÚϤÄá´óѧ²»½ö»ñµÃÁ˼ÆËã»úѧλ£¬Í¬Ê±»¹»ñµÃÁËÒôÀÖѧλ¡£¸üÁîÈ˳ԾªµÄÊÇÔڻص½Èí¼þ¿ª·¢ÁìÓò֮ǰ£¬Ëû»¹»ñµÃÁËÒôÀÖѧµÄ²©Ê¿Ñ§Î»¡£ÓÐ×ÅÏ൱·á¸»µÄC/C++¼¼Êõ±³¾°µÄRodÔçÔÚ1996Äê¾Í¿ªÊ¼Á˶ÔJava·þÎñÆ÷¶Ë¼¼ÊõµÄÑо¿¡£ËûÊÇÒ»¸öÔÚ±£ÏÕ¡¢µç×ÓÉÌÎñºÍ½ðÈÚÐÐÒµÓÐ×ŷḻ¾ÑéµÄ¼¼Êõ¹ËÎÊ£¬Í¬Ê±Ò²ÊÇJSR-154£¨Servlet 2.4£©ºÍJDO 2.0µÄ¹æ·¶×¨¼Ò¡¢JCPµÄ»ý¼«³ÉÔ±¡£
ÕæÕýÒýÆðÁËÈËÃǵÄ×¢ÒâµÄ£¬ÊÇÔÚ2002ÄêRod Johnson¸ù¾Ý¶àÄê¾Ñé׫дµÄ¡¶Expert One-on-One J2EE Design and Development¡·¡£ÆäÖжÔÕýͳJ2EE¼Ü¹¹µÄÓ·Öס¢µÍЧµÄÖÊÒÉ£¬Òý·¢ÁËÈËÃǶÔÕýͳJ2EEµÄ·´Ë¼¡£Õâ±¾ÊéÒ²ÌåÏÖÁËRod Johnson¶Ô¼¼ÊõµÄ̬¶È£¬¼¼ÊõµÄÑ¡ÔñÓ¦¸Ã»ùÓÚʵ֤»òÊÇ×ÔÉíµÄ¾Ñ飬¶ø²»ÊÇÈκÎÐÎʽµÄżÏñ³ç°Ý»òÕßÃÅ»§Ö®¼û¡£ÕýÊÇÕâ±¾ÊéÕæÕýµØ¸Ä±äÁËJavaÊÀ½ç¡£»ùÓÚÕâ±¾ÊéµÄ´úÂ룬Rod Johnson´´½¨ÁËÇáÁ¿¼¶µÄÈÝÆ÷Spring¡£SpringµÄ³öÏÖ£¬Ê¹µÃÕýͳJ2EE¼Ü¹¹Ò»Í³ÌìϵľÖÃæ±»´òÆÆ¡£»ùÓÚStruts+Hibernate+SpringµÄJ2EE¼Ü¹¹Ò²Ö𽥵õ½ÈËÃǵÄÈϿɣ¬ÉõÖÁÔÚ´óÐ͵ÄÏîÄ¿¼Ü¹¹ÖÐÒ²Ö𽥿ªÊ¼Ó¦Óá£
Rod JohnsonµÄÐÂ×÷¡¶Expert One-on-one J2EE Development without JEB¡·Ôò¸üÈÃÈ˳Ծª£¬µ¥µ¥¡°Without EJB¡±Ò»´Ê¾Í»áÈôó¶àÊýJ2EE¼Ü¹¹Ê¦´óµøÑÛ¾µÁË¡£²»¹ýRod Johnson¿ÉÄܽö½öÊÇÏëͨ¹ý¡°Without EJB¡±Ò»´Ê±íÃ÷Ó¦¸Ã·Å¿ªÃÅ»§Ö®¼û¡£ÕâÒ²ÊÇRod JohnsonÒ»¹áµÄ×÷·ç£¬¡£Ò²ÐíÕýÊÇÕâÖÖ˼Ï룬´ÙʹµÃRod Johnson´´½¨ÁËSpring£¬ÕæÕý¸Ä±äÁËJavaÊÀ½ç¡£
Alan Kay :JavaµÄ¾«ÉñÏÈ·æ
ÎÄ/Ðìê»
SunµÄ¹Ù·½Java½Ì²ÄÖÐÓÐÒ»¾ä»°£¬ËµJavaÊÇ¡°C++µÄÓï·¨ÓëSmalltalkÓïÒåµÄ½áºÏ¡±¡£¶øSmalltalkµÄ´´ÔìÕß¾ÍÊÇAlan Kay¡£
Alan KayÓÚ1970Äê¼ÓÈëXerox¹«Ë¾µÄPalo AltoÑо¿ÖÐÐÄ¡£ÔçÔÚ70Äê´ú³õÆÚ£¬Alan KayµÈÈË¿ª·¢ÁËÊÀ½çÉϵڶþ¸öÃæÏò¶ÔÏóÓïÑÔSmalltalk£¬Òò´Ë£¬Alan Kay±»ÓþΪSmalltalkÖ®¸¸¡£2003Ä꣬Alan KeyÒòΪÔÚÃæÏò¶ÔÏó³ÌÐòÉè¼ÆÉϵĽܳö¹±Ï×£¬»ñµÃÁËÓмÆËã»ú½çµÄŵ±´¶û½±Ö®³ÆµÄACM Turing Award¡£
Alan Kay³ÉÃûÓÚSmapltalkºÍOOP£¬¶øJavaËäÈ»ÔÚÓïÑÔÉÏÀàËÆÓÚC£¬µ«ÊÇÔÚÓïÒåÉϷdz£½Ó½üSmalltalk£¬ºÜ¶àJavaÖеÄÉè¼ÆË¼ÏëÔÚAlan KayµÄÎÄÏ×ÖÐÕÒµ½¸ùÔ´£¬Ò²ÓÐЩÈ˽«Alan Kay×ðΪJava˼ÏëµÄÏÈÇý¡£²»¹ýÒź¶µÄÊÇËÆºõAlan KayÀÏÏÈÉú¶ÔJava²¢²»ÂòÕË£¬·´µ¹¹¥»÷˵JavaÊÇ´æÔÚÖÂÃüȱÏݵıà³ÌÓïÑÔ£¬JavaµÄ³É¹¦²»ÊÇÓÉÓÚJava±¾ÉíµÄÄÚÔÚ¼ÛÖµ£¬¶øÊÇÆäÉÌÒµ»¯µÄ³É¹¦¡£Alan KayÐÀÉ͵ÄÊÇLisp£¬ËûÈÏΪLispÊÇÈí¼þµÄÂó¿Ë˹Τ·½³Ì£¬ÆäÖеÄÐí¶àÏë·¨ÊÇÈí¼þ¹¤³ÌºÍ¼ÆËã»ú¿ÆÑ§µÄÒ»²¿·Ö¡£¿´À´ÓµÓÐAlan KayÕâÑùÒ»Î»ÖØÁ¿¼¶µÄJavaÏÈÇýÈÔÊÇÎÒÃÇJavaÒ»ÏáÇéÔ¸µÄµ¥Áµ°É¡£
Kent Beck : Áìµ¼µÄÃô½Ý³±
ÎÄ£ºÁõÌú·æ
BeckÈ«¼ÒËÆºõ¶¼ÃÖÂþ׿¼ÊõµÄζµÀ¡£Éú³¤ÔÚ¹è¹È, ÓÐ×ÅÒ»¸ö¶ÔÎÞÏßµç³ÕÃÔµÄ׿¸¸£¬ÒÔ¼°Ò»¸öµçÆ÷¹¤³Ìʦ¸¸Çס£´ÓС¾ÍÒýµ¼Kent Beck³ÉΪÁËÒµÓàÎÞÏߵ簮ºÃÕß¡£
ÔÚ¶íÀÕ¸ÔÖÝ´óѧ¶Á±¾¿ÆÆÚ¼ä£¬Kent Beck¾Í¿ªÊ¼Ñо¿Æðģʽ¡£È»¶øÔÚËû×îÖÕÄõ½¼ÆËã»úѧλ֮ǰ£¬ËûÈ´ÊÇÔÚ¼ÆËã»úºÍÒôÀÖÖн»ÌæÑ§Ï°¡£ËƺõJava´óʦ¶¼Äܹ»ÓÐÕâÑùµÄÄÜÄÍ£¬ÁíÒ»Java´óÅ£Rod JohnsonͬÑùÒ²ÓµÓÐÒôÀÖѧµÄ²©Ê¿Ñ§Î»¡£
Kent BeckÒ»Ö±³«µ¼Èí¼þ¿ª·¢µÄģʽ¶¨Òå¡£ÔçÔÚ1993Ä꣬Ëû¾ÍºÍGrady Booch£¨UMLÖ®¸¸£©·¢ÆðÁËÒ»¸öÍŶӽøÐÐÕâ¸ö·½ÃæµÄÑо¿¡£ËäÈ»ÖøÓÐÁË¡¶Smalltalk Best Practice Patterns¡·Ò»Ê飬µ«Õâ¿ÉÄܲ¢²»ÊÇKent Beck×î´óµÄ¹±Ïס£ËûÓÚ1996ÄêÔÚDaimlerChryslerÆô¶¯µÄ¹ØÓÚÈí¼þ¿ª·¢µÄÏîÄ¿£¬²ÅÕæÕýµØÓ°ÏìºóÀ´µÄÈí¼þ¿ª·¢¡£Õâ´ÎµÄ½Ü×÷¾ÍÊÇXP£¨¼«ÏÞ±à³Ì£©µÄ·½·¨Ñ§¡£
ºÍÈí¼þ¿ª·¢´óʦMartin FowlerºÏÖøµÄ¡¶Planning Extreme Programming¡·¿ÉνÊǹØÓÚXPµÄµì»ùÖ®×÷¡£´Ó´Ë£¬Ò»ÏµÁеÄ×÷Æ·Èç¡¶Test Driven Development: By Example¡·£¬¡¶Extreme Programming Explained: Embrace Change¡·Èøü¶àµÄÈËÁìÂÔµ½Á˼«ÏÞ±à³ÌµÄ¾«Ë裬ҲÖð²½µ¼ÖÂÁ˼«ÏÞ±à³ÌµÄÁ÷ÐС£
Kent BeckµÄ¹±Ï×Ô¶²»½öÈç´Ë¡£¶ÔÓÚÖÚ¶àµÄJava³ÌÐòÔ±À´Ëµ£¬ËûºÍErich Gamma¹²Í¬´òÔìµÄJUnit£¬ÒâÒå¸ü¼ÓÖØ´ó¡£Ò²ÐíÕýʽÕâ¸ö¼òµ¥¶øÓÖÇ¿´óµÄ¹¤¾ß£¬ÈÃÖÚ¶àµÄ³ÌÐòÔ±¸ü¼ÓÈϿɺÍÐÅÀµ¼«ÏÞ±à³Ì£¬´Ó¶øÒýÆðÁËJavaÃô½Ý¿ª·¢µÄ¿ñ³±°É¡£
Ê®´ó²úÆ·
Sun JDK :JavaµÄ»ùʯ
ÎÄ/Īӳ
ÖÚËùÖÜÖª£¬Á÷´«ÓÚÊеÄJDK²»µ¥SunÒ»¼Ò£¬±ÈÈçIBMµÄJDK¡¢BEAµÄJRocket¡¢GNUµÄGCJ£¬ÒÔ¼°ÈçKaffeÕâÑùµÄ¿ªÔ´ÊµÏÖ£¬²»Ò»¶ø×ã¡£µ«ÊÇ£¬¸ùÕýÃçºìµÄSun¹Ù·½JDKÒ»Ö±ÒÔÀ´¶¼ÊDZ¸ÊÜÖõÄ¿µÄÖ÷Á÷£¬Ëü¶ÔJavaÉçÇøµÄÓ°ÏìÒ²ÊǾÙ×ãÇáÖØ¡£
1996Äê1Ô£¬SunÔÚ³ÉÁ¢ÁËJavaSoft²¿ÃÅÖ®ºó£¬ÍƳöÁËJDK 1.0£¬ÕâÊÇSun JDK£¨Java Development Kit£©µÄÊ׸öÕýʽ°æ±¾;µ±Äê12Ô£¬JDK1.1³ö¯¡£¸Ã°æ³ýÁ˶ÔǰÐò°æ±¾²¿·ÖÌØÐÔ×öÁ˸ĽøÒÔÍâ£¬ÖØÐ´ÁËAWT£¬²ÉÓÃÁËеÄʼþÄ£ÐÍ¡£1998Äê12Ô£¬JDK 1.2Õýʽ·¢²¼¡£´ËʱµÄÀà¿âÈÕÕéÍêÉÆ£¬APIÒÑ´Óµ±³õµÄ200¸öÀà·¢Õ¹µ½ÁË1600¸öÀà¡£ÔÚ1.2°æ±¾ÖÐÒýÈëÁËÓÃ100%´¿Java´úÂëд¾ÍµÄSwing£¬Í¬Ê±£¬Sun½«Java¸üÃûΪJava 2¡£
1999Ä꣬Java ¼¼ÊõÐγÉÁËJ2SE¡¢J2EEºÍJ2MEÈý´ó¸ñ¾Ö¡£SunÏòÊÀÈ˹«²¼ÁËJava HotSpotÐÔÄÜÒýÇæ¼¼ÊõµÄÑо¿³É¹û¡£HotSpotÖ¼ÔÚ½øÒ»²½¸ÄÉÆJVMÐÔÄÜ£¬Ìá¸ßJava ByteCodeµÄ²úÉúÆ·ÖÊ£¬¼Ó¿ìJavaÓ¦ÓóÌÐòµÄÖ´ÐÐËÙ¶È¡£J2SE 1.3·¢²¼ÓÚ2000Äꣻ2002Äê2Ô¼䣬J2SE 1.4ÎÊÊÀ£¬ÕâÊÇÓÐJCP²ÎÓëÒÔÀ´Ê׸öJ2SEµÄ·¢Ðа汾¡£2004Äê9ÔÂ30ÈÕ£¬´úºÅΪ¡°Tiger¡±µÄJ2SE 5.0ÖÕÓÚ³öÁýÁË£¬Õâ´Î·¢²¼±»ÓþΪJavaƽ̨ÀúÀ´·¢²¼ÖÐÌØÐԱ䶯×î´óµÄÒ»´Î¡£°üÀ¨·ºÐÍÔÚÄÚµÄÈô¸ÉÖØ´óÓï·¨¸Ä½ø¡¢ÔªÊý¾ÝÖ§³Ö£¬°üÀ¨¶àÏ̡߳¢JDBCÔÚÄڵĶàÏîÀà¿â¸Ä½ø£¬¶¼Áî¹ã´óJava³ÌÐòÔ±¼¤¶¯²»ÒÑ¡£×Ô´Ë£¬SunµÄ¹Ù·½JDK£¨J2SE Development Kit£©ÒѾ²½ÈëÁËÒ»¸öеĸ߶ȡ£
Eclipse :ÒԼܹ¹Ó®ÌìÏÂ
ÎÄ/¶ñħ
IBMÊÇÔÚ2001ÄêÒÔ4000ÍòÃÀÔªÖÖ×Ó»ù½ð³ÉÁ¢EclipseÁªÃË£¬²¢ÇÒ¾èÔùÁ˲»ÉÙ³ÌÐò´úÂë¡£Èç½ñ£¬¸Ã×éÖ¯ÓÐ91¸ö»áÔ±£¬°üº¬Ðí¶àÈ«Çò×î´óµÄÈí¼þÉÌ¡£¸ù¾ÝEvans Data¹«Ë¾µÄ×ÊÁÏ£¬EclipseÊÇĿǰ×îÊÜ»¶ÓµÄJava¿ª·¢¹¤¾ß¡£
Java³§ÉÌÈôÒª¹²Í¬¶Ô¿¹Î¢Èí£¬±Ë´ËÖ®¼ä¾ÍÒªÓй²Í¬µÄ¿ª·¢¹¤¾ß²ÅÐС£
ÔÚEclipseƽ̨ÉÏ£¬³ÌÐòÔ±¿ÉʹÓúü¸ÖÖ²»Í¬µÄÓïÑÔ¡£ÔÚǰ¶Ë·½Ã棬Óû§¿ÉÕûºÏ¶àÖÖ¹¤¾ßÀ´×«Ð´Plug-in³ÌÐò»òUnit Test¡£Eclipse×î´óµÄÌØÉ«¾ÍÔÚÓÚÆäÍêÈ«¿ª·ÅµÄÌåϵ½á¹¹£¬Õâ´ú±íÈκÎÈ˶¼¿ÉÏÂÔØ²¢Ð޸ijÌÐò´úÂ룬¸øEclipseд²å¼þ£¬ÈÃËü×öÈκÎÄãÄÜÏëµ½µÄÊÂÇ飬¼´Ëùν¡°Design for everything but nothing in particular¡±¡£
Eclipse»ù½ð»áµÄ¼Ü¹¹±È½ÏÌØ±ð£¬·´Ó³³öÆóÒµÏÖ½ñ¶ÔÓÚ¿ª·ÅÔʼÂë¼Æ»®Ò²Ô½À´Ô½»ý¼«Ö÷¶¯¡£Eclipse²»ÏñÒ»°ã¿ª·ÅÔ´ÂëÈí¼þÈÝÐí¸öÈ˵ľèÏ׳ÌÐò£¬¸Ã»ù½ð»áÊÇÓɳ§ÉÌÖ÷µ¼¡£²»ÂÛÊǶÊ»á³ÉÔ±»òÕßÊdzÌÐòÔÞÖúÕß¼¸ºõ¶¼À´×ÔÓÚ¶ÀÁ¢Èí¼þ¿ª·¢ÉÌ(ISVs)µÄÔ±¹¤¡£
EclipseÊ×ϯִÐйÙMike Milinkovich˵£¬ÕâÖÖ³§ÉÌ»áÔ±ÖÆÊÇÌØÒâÉè¼ÆµÄ£»Ëû˵EclispeÈí¼þ¿ª·¢¿ìËÙ¾ÍÊÇÒòΪ»áÔ±ÖÆµÄ¹ØÏµ£¬Í¬Ê±ÓÖ¼ÓÉÏ¿ª·ÅÔ´Â뿪·¢Ä£Ê½µÄÁÙÃÅÒ»½Å¡£ÕâÓëÒ»°ã͸¹ý±ê×¼×éÖ¯µÄ×ö·¨È«È»²»Í¬¡£ ÕâÆäʵÕýºÃÑéÖ¤ÁËÒ»¾äÀÏ»°:¡°¿ª·Å¼´±ê×¼¡±¡£
JUnit/Ant : ÈÃJava×Ô¶¯»¯µÄ¾ø´úË«½¾
ÎÄ/ÁõÌú·æ
ÔÚJava³ÌÐòÔ±±Ø±¸µÄ¹¤¾ßÖУ¬¹² ͬӵÓÐÇÒ½»¿Ú³ÆÔ޵ĿÖžͷÇJUnit¡¢AntĪÊôÁË¡£Ò»¸öÊǵ¥Ôª²âÊÔµÄÉñ±øÀûÆ÷£¬Ò»¸öÊDZàÒ벿ÊðµÄ²»¶þ֮ѡ£¬ËüÃÇÈÃJavaµÄ¿ª·¢¸ü¼òµ¥¡£
JUnitÓÉXPºÍTDDµÄ´´Ê¼ÈË¡¢Èí¼þ´óʦKent BackÒÔ¼°Eclipse¼Ü¹¹Ê¦Ö®Ò»¡¢Éè¼ÆÄ£Ê½Ö®¸¸Erich Gamma¹²Í¬´òÔì¡£Ãû¼ÒµÄÊֱʺÍÀíÄîʹµÃJUnit¼òµ¥¶øÇ¿´ó£¬Ëü½«Java³ÌÐòÔ±´úÈëÁ˲âÊÔÇý¶¯¿ª·¢µÄʱ´ú¡£JUnitÁ¬ÈÎÁË2001¡¢2002Äê¡°Java World±à¼Ñ¡Ôñ½±¡±ÒÔ¼°2003Äê¡°Java World×î¼Ñ²âÊÔ¹¤¾ß¡±ºÍ2003Äê¡°Java Pro×î¼ÑJava²âÊÔ¹¤¾ß¡±µÈÖڶཱÏÉîÊÜJava³ÌÐòÔ±ºÃÆÀ¡£
AntÊÇ¿ªÔ´ÏîÄ¿µÄµä·¶£¬ËüÈÃIDEµÄ¹¦Äܸü¼ÓÇ¿´ó£¬´ÓSunµÄNetBeansµ½JBuilder,Ö÷Á÷µÄIDEÖд¦´¦¶¼ÓÐËüµÄÉíÓ°¡£¡°Another Neat Tool¡±ÔÊÇËüµÄ±¾Ãû£¬µ«ÕâÒѾ½¥½¥²»ÎªÈËÖª¡£Ëü³¹µ×µØÈò¿Êð×Ô¶¯»¯£¬¶ø³ÌÐòÔ±ÐèÒª×öµÄ½ö½öÊǼ¸Ìõ¼òµ¥µÄÅäÖÃÃüÁî¡£ºÍJUnitÒ»Ñù£¬AntÒ²ÈÙ»ñÁËÖÚ¶àµÄÊâÈÙ:2003ÄêJavaWorld¡°×îÓÐÓõÄJavaÉçÇø¿ª·¢µÄ¼¼Êõ±à¼Ñ¡Ôñ½±¡±, 2003ÄêJava Pro¡°×îÓмÛÖµµÄJava²¿Êð¼¼Êõ¶ÁÕßÑ¡Ôñ½±¡±£¬2003Äê¡°JDJ±à¼Ñ¡Ôñ½±¡±£¬Ò²ÈÃAntÊܵ½µÄ¶à·½µÄÈϿɡ£
Ant¶ÔJUnitµÄÈ«Ãæ¼¯³É,ÔòʹµÃÒ»Çж¼±äµÃ¸ü¼ÓÍêÃÀ¡£Ö»Ðè¼òµ¥µØÅäÖ㬴Ó×Ô¶¯²âÊÔµ½±¨¸æÉú³É£¬´Ó±àÒëµ½´ò°ü²¿Êð¾ù¿É×Ô¶¯Íê³É¡£Ç¿´óµÄ¹¦ÄÜ£¬¼òµ¥µÄÅäÖã¬ÈÃJava³ÌÐòÔ±¸ßÕíÎÞÓÇ¡£Êµ¿ÉνÈÃJava×Ô¶¯»¯µÄ¾ø´úË«½¾¡£
Websphere : »îÍÌÊг¡µÄ´ó¾¨
ÎÄ/jini
1999Ä꣬ IBMÓëNovellÇ©¶©ºÏ×÷ÐÒ飬³É¹¦µØÌṩµç×ÓÉÌÎñµÄ½â¾ö·½°¸¸øÓèÔÏÈʹÓÃNetWareµÄÓû§¡£Í¬Äê¸üÊÇÍÆ³öÁËWebSphere Application Server 3.0£¬²¢ÇÒÍÆ³öWebSphere StudioÓëVisualAge for JavaÈù¤³Ìʦ¿ÉÒÔ¿ìËÙ¿ª·¢Ïà¹ØµÄ³ÌÐò¡£2001Ä꣬IBM¸üÊÇÐû²¼½«Ó¦Ó÷þÎñÆ÷¡¢¿ª·¢¹¤¾ßÕûºÏÔÚÒ»Æð£¬ÓëDB2¡¢ Tivoli¼°Lotus½áºÏ³ÉΪһÌ×¹²Í¨½â¾ö·½°¸£¬Èç½ñ¡¢IBM¸üÊDz¢ÈëÁËRational Rose ( UML tools )Èÿª·¢Á÷³Ì¸üÊÇÍêÕû»¯¡£
SunÔÚWeb ServicesµÄ²ßÂÔ·½ÃæÔ¶Ô¶ÂäºóÓÚ΢ÈíÓëIBM, µ±ËûÃÇÊÖÀÊÖÔÚÑж©Web Services¹æ·¶, ¼ÓÉÏIBMÂòÓ²¼þËÍÈí¼þ»òÊÇÂòWebSphereËÍDB2µÄ²ßÂÔÈÃÆóÒµ´óÀÐÃÇ·×·×תÏòIBMµÄÕóÓª, Sun²Å¾ª¾õ´óÊÆÒÑÈ¥¡£WebSphere¸´Ôӵݲװ£¬Éî°ÂµÄÉ趨£¬ÄÑÒÔÀí½âµÄ³ö´íѶϢ²»¶ÏµØÌôÕ½¿ª·¢ÕßµÄÄÍÐÄÓëÒãÁ¦¡£
IBMÈç½ñÒѾ²»Êǽ«WebSphere¶¨ÒåΪµ¥Ò»²úÆ·£¬ËüÒѾÊÇÒ»¸öƽ̨µÄ´úÃû´Ê¡£ËüÀïÃæµÄ²úƷĿǰ°üº¬ÁËÓ¦Ó÷þÎñÆ÷¡¢ÉÌÒµÕûºÏ¡¢µç×ÓÉÌÎñ¡¢ Êý¾ÝѶϢ¹ÜÀí¡¢ÍøÂç´®Á÷¡¢Èí¼þ¿ª·¢Á÷³Ì¡¢ÏµÍ³¹ÜÀí¡¢ÎÞÏßÓïÒôµÈµÈ¡£·Ç³£¶àÑù»¯,Ò²ÈÃÆóÒµ½çÔ¸ÒâÏàÐÅWebSphere¿ÉÒÔ´ø¸øËûÃÇÒ»Ì×ÍêÕûµÄ½â¾ö·½°¸¡£Í¬Ê±, IBMÒ²ÔÚÍÆ¹ãSOAµÄ¸ÅÄî, ¼òµ¥À´Ëµ, ÀûÓÃWeb ServiceµÄñîºÏÐÔÓ빤×÷Á÷³ÌµÄÕûºÏ, ΪÆóÒµÄÚ²¿´òÔìÒÔ·þÎñΪµ¼ÏòµÄ¼Ü¹¹¡£
IBM¾èÏ׳öEclipse´ø¸øJava¿ª·¢ÈËÔ±¶ÔIDEµÄÖØÐÂÕÆÎÕ¡£Î´À´ÊÇ·ñ»á¾èÏ׳öWebSphereµÄÄÄÒ»¸ö²¿·Ö³ÉΪOpenSources, »òÐí, ÓÖÊǸÄдJavaÊÀ½çµÄʱ¿ÌÁË¡£
WebLogic : ¼¼ÊõÈ˵Ä×î°®
ÎÄ/jini
1995Äê, BEA³ÉÁ¢ÁË, ³õÆÚÒÔTuxedoÊý¾Ýת»»µÄ²úƷΪ»ù´¡, ³É³¤Ö®Ñ¸ËÙÊÇÀúÄêÀ´×îÇ¿µÄÆóÒµ¡£ 1998Äê, BEAÍÆ³öÒÔJavaΪ»ù´¡µÄÍøÂç½â¾ö·½°¸, ÌṩÁËÍêÕûµÄÖмä²ã¼Ü¹¹, ¸üͬʱ֧³ÖEJB 1.0 ¼°Î¢ÈíµÄCOM×é¼þ, ·½±ãµÄ¹ÜÀí½Ó¿Ú°ÂÓÁ˹¤³ÌʦµÄÐÄ¡£ ÔÚIBMºÍOracleÉÐδ׼±¸ºÃÓ»÷µÄʱºò, BEAÒѾϯ¾íÆóÒµÓ¦ÓÃÆ½Ì¨µÄÊг¡¡£ WebLogicÎÞÂÛÔÚÊг¡ÁìÏȶÈÓë¼¼ÊõÁìµ¼ÐÔÓë²ßÂÔÔ¶¹ÛÐÔ¶¼ÓÅÓÚµ±ÄêµÄËùÓÐÓ¦Ó÷þÎñÆ÷³§ÉÌ¡£
Èç½ñWebLogic²»½ö½öÊÇÓ¦ÓÃÆ½Ì¨·þÎñÆ÷µÄÃû³Æ, ¶øÊÇBEA¶ÔÓÚÕû¸öÆóÒµ½â¾ö·½°¸µÄ×ܳÆ, ÎÞÂÛÊÇWebLogic Portal»òÊÇWebLogic IntegrationÅäºÏ×ÅWorkshop¿ª·¢»·¾³, À´×Ô΢ÈíµÄUI¿ª·¢ÍŶÓÈÃWorkshop¼¸ºõ´ïµ½Ëù¼û¼´ËùµÃ¡£ ½Ó×Å, ÔÚÏÂÒ»¸ö°æ±¾Ö®ÖÐ, BEAµÄBeeHive¿ª·ÅÔ´´úÂë¼Æ»®½«ÊͳöÖмä²ã¿Ø¼þµÄ¿ª·¢Ä£¿é, ²¢ÇÒÓëEclipseºÏ×÷¹²Í¬´òÔìÐÂÒ»´úµÄ¿ª·¢»·¾³¡£ Èç´ËÇ¿¶øÓÐÁ¦µÄ¼¼ÊõÖ§³Ö, ¸üÊÇÈù˿ÍÔ¸ÒâʹÓÃWebLogicƽ̨µÄ×î´óÔÒò¡£
´úºÅΪ¡°Diablo¡±µÄ WebLogic Server 9.0С¶ñħÒѾ³öÏÖÁË, ĿǰËäÈ»½ö½öÊÇBETA°æ, ÒÔPortlet ·½Ê½´òÔìµÄ¹ÜÀí½Ó¿ÚÓëÍêÕûÇÒÃÀÃîµÄWebServicesÖ§³Ö, ʵÔÚºÜÄÑÕÒµ½¿ÉÒÔÌôÌ޵ĵط½, ËäȻȥÄê±»IBMµÄ¼¼ÊõÐÔÍÆÏú³¬Ô½ÁËÊг¡Õ¼ÓÐÂÊ, ²»¹ý½ÓÏÂÀ´SOAµÄƽ̨¾ºÕùÏÖÔڲſªÊ¼, BEAµÄLOGOÒ²¼ÓÈë¡°Think liquid¡±²¢ÇÒÍÆ³öеÄAquaLogicƽ̨×öΪÊý¾Ý·þÎñƽ̨, ¿É¼û, JavaµÄÓ¦Ó÷þÎñÆ÷µÄÕ½Õù, »¹»á¼ÌÐø½øÐÐ×Å¡£
JBuilder : Java¿ª·¢¹¤¾ßµÄÍõÕß
ÎÄ/ÁõÌú·æ
JavaµÄ¿ª·¢¹¤¾ßÖÐ,×î³öÃûµÄιýÓÚBorland¹«Ë¾µÄJBuilderÁË¡£¶ÔÓÚһЩûÓÐŪÇå³þ¿ª·¢¹¤¾ßÓëJDKµÄÇø±ðµÄJavaÈëÃÅÕßÀ´Ëµ£¬JBuilder¾ÍÈçͬVisual C++Ö®ÓÚC++£¬ÒÔΪJBuilder¾ÍÊÇJavaµÄÈ«²¿¡£±ÈÆðÀ¦°óÔÚ·þÎñÆ÷ÉÏÏúÊÛµÄJDeveloper£¬JBuilderÓ¦¸ÃÊÇΨһµÄ½ö¿¿×ÔÉíµÄʵÁ¦¶øÕ¼ÁìÁ˴󲿷ÖÊг¡µÄJavaÉÌÓÿª·¢¹¤¾ßÁË¡£¶øJBuilder×÷ΪJava ¿ª·¢¹¤¾ßµÄÍõÕߣ¬Æä¶á¹Ú֮·²¢·ÇÒ»·«·ç˳¡£Ö±µ½JavaµÄÌì²ÅBlake Stone³ÉΪJBuilderµÄArchitectÖ®ºó£¬JBuilder 2.0ÒÔ¼°3.0²ÅÖð½¥ÍƳö¡£2000Äê3ÔÂ14ÈÕ£¬JBuilder 3.5µÄÍÆ³ö±ð¾ßÒâÒ壬Ëü³ÉΪÁËÒµ½çµÚÒ»¸öÓô¿Java´òÔìµÄ¿ª·¢¹¤¾ß£¬Ò²·çÃÒÁËÕû¸öJava¿ª·¢¹¤¾ßÊг¡¡£ÔÚͬÄê11Ô·ÝÍÆ³öµÄJBuilder 4.0³Ëʤ׷»÷£¬³åÆÆÁË50%µÄÊг¡Õ¼ÓÐÂÊ£¬³ÉΪÁËÕæÕýJava¿ª·¢¹¤¾ßµÄÍõÕß¡£
BorlandÒÔÿ°ëÄê×óÓÒÍÆ³öÒ»¸öа汾µÄËÙ¶È£¬ÈÃÖÚ¶àµÄ¶ÔÊÖµ¹ÔÚÁËɳ³¡¡£¶øMicrosoftÒòΪÓëSunµÄ¹Ù˾£¬Ò²Ê¹µÃÒ»¸öÇ¿´óµÄ¶ÔÊÖÍ˳öÁËÕ½Õù¡£2001Ä꣬¼ÓÈëÁË¶ÔÆóÒµÐ×÷Ö§³ÖµÄJBuilder 5ÒÔ¼°Ç¿»¯ÁËÍŶӿª·¢¹¤¾ßµÄJBuilder 6´ò°ÜÁË×îºóÒ»¸ö¶ÔÊÖVisual Age For Java¡£2002ÄêJBuilder 7ÍÆ³öÖ®ºó£¬ÔÙҲûÓÐÆäËû³§ÉÌÓëJBuilder¾ºÕù¡£
¹Â¶ÀµÄÍõÕß²¢Ã»ÓÐÍ£Ï½Ų½£¬ÔÚ2003Äêµ½2005Äê¼ä£¬JBuilderÒ²ÈÔÈ»ÑÓÐøÁËÆä°ëÄêÒ»¸ö°æ±¾µÄËÙ¶È£¬ÍƳöÁË8¡¢9¡¢10¡¢2005Ëĸö°æ±¾¡£Ç¿´óµÄ¹¦ÄÜÒÔ¼°³ÖÐøµÄ¸Ä½ø£¬Ò²ÈÃJava³ÌÐòÔ±¶àÁËÒ»·Ö¶ÔÄܹ»ÔÚ¿ª·¢¹¤¾ßÊг¡ÉÏÓëMicrosoftѪƴʮÊýÄêµÄBorlandµÄ¾´Ñö¡£
Oracle : JavaÈËÓÀÔ¶µÄÇé½á
ÎÄ/ÐܽÚ
ÔÚÁÖÁÖ×Ü×ܵÄÊý¾Ý¿âÖ®ÖУ¬ÓÐÒ»ÖÖÓÈÆäÁîÈËÓÖ°®ÓÖºÞ¡¢Ó¡ÏóÉî¿Ì£¬ÄǾÍÊǹØÏµÐÍÊý¾Ý¿âÊг¡µÄ¡°´óÀС±¡ª¡ªOracle¡£
´Ó¹«Ë¾µÄ½Ç¶È£¬OracleºÍSunÓÐ×ÅÖî¶àÏàËÆÖ®´¦£¬ÀýÈ磺Á½¼Ò¹«Ë¾¶¼ÓµÓÐһλ¸öÐÔÏÊÃ÷µÄCEO¡£ÔçÔÚJavaµ®ÉúÖ®³õµÄ1995Ä꣬Oracle¾Í½ôËæNetScape´Ó¶øµÚ¶þ¸ö»ñµÃÁËJavaÐí¿ÉÖ¤¡£´ÓÄÇÒÔºó£¬Oracle¶ÔJavaµÄ¶¦Á¦Ö§³ÖÊÇJavaÄܹ»ÔÚÆóÒµÓ¦ÓÃÁìÓò´ó»ñ³É¹¦µÄÖØÒªÔÒòÖ®Ò»¡£
ËùÓÐJ2EE³ÌÐòÔ±¶¼ÖªµÀ£¬OracleµÄJDBCÇý¶¯ËäÈ»ÓëOracleÊý¾Ý¿âÅäºÏÁ¼ºÃ£¬µ«ÔÚ²»Éٵط½Ê¹ÓÃÁËרÓÐÌØÐÔ¡£ÆäÖÐ×îÎªÖøÃûµÄ¾ÍÊÇ¡°CLOB/BLOBÎÊÌ⡱£¬ÖîÈç´ËÀàµÄÎÊÌâ¸ø¿ª·¢Õß´øÀ´Á˺ܶàÂé·³¡£ÎªÁËͬʱ¼æ¹Ë²»Í¬µÄÊý¾Ý¿â£¬ËûÃDz»µÃ²»¾³£°Ñ×Ô¼ºµÄÒ»¸öDAO£¨Êý¾Ý·ÃÎʶÔÏó£©Ð´³ÉÁ½·Ý°æ±¾£ºÕë¶ÔOracleµÄ°æ±¾ºÍÕë¶ÔÆäËûÊý¾Ý¿âµÄ°æ±¾¡£Óв»ÉÙÈËΪÁË¿ª·¢±ãÀû£¬ÉáÆúÁËÊý¾Ý¿âÖ®¼äµÄ¿ÉÒÆÖ²ÐÔ£¬½«×Ô¼ºµÄ²úÆ·°ó¶¨ÔÚOracleµÄרÓÐÌØÐÔÉÏ¡£
OracleÌṩµÄJava¿ª·¢¹¤¾ßÒ²Óë´Ë´óͬСÒì¡£²»¹ÜÊÇÊý¾Ý¿âÄÚÖõÄJavaÖ§³Ö»¹ÊÇJDeveloper IDE£¬ OracleµÄJava¹¤¾ß¶¼ºÍOracleÊý¾Ý¿âÓÐ×Åǧ˿ÍòÂÆµÄÁªÏµ¡£¿´ÆðÀ´£¬Ö»ÒªOracle»¹ÊÇÊý¾Ý¿âÊг¡Éϵġ°Í·ÅÆ¡±£¬Á˽⡢ѧϰOracleµÄרÓÐÌØÐÔ£¬ÖÜÐýÓÚOracleÌØÓеÄÎÊÌâºÍ½â¾ö·½°¸Ö®ÖУ¬¾Í½«ÈÔ¾ÉÊÇJ2EE³ÌÐòÔ±ÔÚÊý¾Ý¿â»ù´¡ºÍSQLÖ®ÍâµÄ±ØÐÞ¹¦¿Î¡£¶ÔOracleµÄ°®ÓëºÞ£¬Ò²½«ÈÔ¾ÉÊÇJavaÈËÐÄÍ·Ò»¸öÄѽâµÄÇé½á¡£
Struts¡¢Hibernate : Èùٷ½¿ò¼ÜÏàÐÎʧɫµÄ²úÆ·
ÎÄ/ÁõÌú·æ
ºÃµÄ¿ò¼ÜÄܹ»ÈÃÏîÄ¿µÄ¿ª·¢ºÍά»¤¸ü¼Ó±ã½ÝºÍ˳Àû¡£Ïà±ÈSun¹Ù·½±ê×¼µÄ³Ù¶ÛÒÔ¼°¹ÌÖ´£¬¿ªÔ´¿ò¼ÜÒ²¸üµÃµ½Java³ÌÐòÔ±µÄ¹²Ãù¡£StrutsÒÔ¼°Hibernate¾ÍÊÇÕâÑùÒ»Àà²úÆ·£¬ËüÃǼòµ¥¡¢ÓÅÑÅ£¬¸üÈùٷ½µÄ²úÆ·ÏàÐÎʧɫ¡£
̸ÆðStruts£¬²»¿É±ÜÃâµØ¾ÍÒªÌá¼°MVC£¨Model-View-Controller£©µÄÀíÄî¡£¶ø×¼È·µØ½²£¬MVCµÄÌá³öÈ´×îÔçÔ´ÓÚJSPµÄ±ê×¼¡£ÔÚ1998Äê10ÔÂ7ºÅ£¬Sun·¢²¼µÄJSPµÄ0.92µÄ¹æ·¶ÖÐÌá³öµÄModel 2¾ÍÊÇMVCµÄÔÐÍ¡£ÔÚ1999Äê12ÔÂJava WorldµÄ´ó»áÖУ¬Gavind SeshadriµÄÎÄÕÂ×îÔç²ûÊöÁËModel 2¾ÍÊÇÒ»ÖÖMVCµÄ¼Ü¹¹£¬Í¬Ê±Ò²Ìá¼°ÁËMVC¼Ü¹¹ÊÇÒ»ÖÖ×îºÃµÄ¿ª·¢·½·¨¡£2000Äê3Ô£¬ÓÉCraig McClanahan·¢²¼µÄStruts³ÉΪÁË×îÔçÖ§³ÖMVCµÄ¿ò¼Ü¡£StrutsÔÚÉè¼ÆÉÏËäÈ»´æÔÚһЩڸ²¡£¬µ«ÊDz»¿É·ñÈϵÄÊÇ£¬ËüʹµÃJava WebÓ¦ÓõĿª·¢¸ü¼Ó¼ò½àºÍÇåÎú£¬Ò²Èøü¶àµÄ³ÌÐòÔ±°®ÉÏÁËJava£¬²¢¿ªÊ¼ÒÅÍü¹Ù·½µÄJSP¡£Ê±ÖÁ½ñÈÕ£¬±ÈÆðÈçWebWork¡¢TapestryÒÔ¼°Sun¹Ù·½µÄJSF£¬Struts»ò¶à»òÉÙ´æÔÚЩ²»×㣬µ«ÊÇÖÚ¶à³É¹¦ÏîÄ¿µÄʵʩ£¬ÈÔȻʹÆäÀÎÀÎÕ¼¾ÝµÄJava WebÓ¦Óÿò¼ÜµÄÊ×λ¡£
HibernateÔòÔÚijÖ̶ֳÈÉϸıäÁËÈËÃǶԹ¹½¨J2EEµÄ˼·¡£Ïà±ÈÆäEJBµÄEntity BeanµÄÓ³Éä¼¼Êõ£¬HibernateÔòÏԵøü¼Ó¼ò½àºÍÇ¿´ó¡£Îå·ÖÖÓ¾ÍÄܰÑHibernateÅÜÆðÀ´£¬Èøü¶àµÄJava³ÌÐòÔ±ÏíÊܵ½ÁË¿ª·¢µÄÀÖȤ¡£µÚ15½ìJolt´ó½±ÖУ¬×îÓÅÐãÊý¾Ý¿â¡¢¿ò¼ÜÒÔ¼°×é¼þµÄ½±ÏîÖУ¬Hibernateµ±Èʲ»ÈûñµÃÍ·³ï£»²»½öÈç´Ë£¬ HibernateÉõÖÁ»¹Ó°ÏìÁ˹ٷ½µÄ±ê×¼¡£ÔÚÖÚ¶àJava³ÌÐòÔ±ÇÌÊ×ÒÔ´ýµÄEJB 3.0µÄ¹æ·¶ÖУ¬HibernateµÃµ½ÁËÖ§³Ö¡£
Java¿ªÔ´µÄ·±ÈÙ²»½öÈÃÖÚ¶àJavaµÄ¿ª·¢ÕßÏíÊܵ½Á˸ü¶àµÄ±ãÀû£¬ÉõÖÁÓ°ÏìÁ˹ٷ½µÄ±ê×¼¡£¿ÖÅÂÕâÒ²ÊÇ×÷ΪJavaÈ˶ÀÓеÄÀÖȤ֮һ°É¡£
PetStore : J2EEÈ˵ıØÐÞ¿Î
ÎÄ/ÌÕÎÄ
ºÜÉÙÓÐÒ»¸öÀý×ÓÏîÄ¿ÈçPetStoreÕâ °ã¹ãΪÈËÖª£¬¶øÕâºÜ´ó³Ì¶ÈÉÏÒª¹é¹¦ÓÚSunºÜ¡°Ó¢Ã÷¡±µØ°ÑPetStore×ö³ÉÒ»¸öֻչʾ¼Ü¹¹¶øÔÚÐÔÄܵ÷ÓÅÉÏÁôÏÂÁË´ó´óÓàµØµÄÀý×Ó¡£Î§ÈÆ×ÅÐÔÄÜ»°Ì⣬²úÉúÁËÆÄΪÓÐȤµÄ³§ÉÌÖ®¼äÒÔ¼°Æ½Ì¨Ö®¼äµÄPet Wars¡£³ýÈ¥ÕâЩ¹ØÓÚÐÔÄܵÄÁ÷ÑÔòãÓïÄËÖÁÖÐÉË£¬PetStoreÔÚչʾJ2EE1.3ƽ̨µÄ¼Ü¹¹¡¢ÑÝʾʲô½Ð·Ö²ã·½Ã滹ÊÇÓÐןܴóµÄ¹¦À͵ġ£¶øÇÒPetStoreÔڼܹ¹·½ÃæµÄ·á¸»ÐÔʹµÃÆä³ÉΪJ2EEµÄÄÇЩÇáÁ¿¼¶Ð¡ÐÖµÜÃÇչʾ×ÔÉíµÄÒ»¸ö±ØÑ¡¿ÆÄ¿¡£
²»Ì¸ÄÇÐ©Î§ÈÆPetStoreµÄ¿ÚË®£¬ÄÇЩÊý²»¾¡µÄµÁ°æ£¬PetStore¸ø¿ª·¢ÐÂÊÖ´øÀ´µÄ×îÖØ´óµÄÓ°Ï죬ÎÒÏëÓ¦¸ÃÊǼܹ¹µÄ¹ÛÄî¶ø²»ÊÇÐÔÄÜ£¬Ò²²»ÊÇÒµÎñ¡£×öΪһÖÖ¼¼ÊõµÄDemo£¬ÕâÎÞ¿É·ÇÒé¡£µ«ÊÇÈç¹ûÄãÊÇÒ»¸öÐÂÊÖ£¬¸ú×ÅPetStoreÒಽÒàÇ÷µØÑ§Ï°J2EE¿ª·¢£¬ÄÑÃâ»áÏÝÈë¹ý¶ÈÉè¼Æ¡¢»ª¶ø²»ÊµÖ®ÀàµÄÀ§¾³¡£Î§ÈÆ×Å.NETµÄPetStoreµÄ¿Ë¡PetShopÕ¹¿ªµÄ¼Ü¹¹ÓëÐÔÄܵĴóÌÖÂÛ£¬ÊDz»ÊÇÒ²ÔÚ´ÙʹÎÒÃÇѧϰм¼ÊõʱӦ¸ÃÒÔ½â¾öÎÊÌâΪµ¼ÏòÄØ£¿ÌرðÊǵ±ÄãÏë°ÑÒ»¸öÈçPetStoreÕâ°ãµÄSample ProjectµÄ¼¼ÊõÕÕ°áµ½ÄãµÄÏÖʵÊÀ½çµÄReal ProjectÀ´Ê±¡£
Ê®´ó×éÖ¯
Sun : ÒòΪJava¶øÓÀ±»ÈÙ¹â
ÎÄ/ÃÏÑÒ
SunÊÇ1980Äê´ú³õÆÚÓÉ˹̹¸£´óѧÈýλÄêÇáѧÉú´´Á¢µÄ¹«Ë¾¡£ÓëÒ»°ãÈ˵ÄÓ¡Ïó²»Í¬£¬¡°SUN¡±µÄ±¾Òâ²¢²»ÊÇÆóͼØâÇÔÌìÉÏÄÇ¿ÅÎÂůµÄºãÐǵÄÍþÃû£¬¶øÊÇ¡°Ë¹Ì¹¸£´óÑ§ÍøÂ硱µÄÒâ˼¡£SunÔÚ¡°Ç°Java¡±Ê±´ú¾ÍÒòΪSPARCоƬ¡¢Solaris²Ù×÷ϵͳºÍ¡°ÍøÂç¾ÍÊǼÆËã»ú¡±µÄ¿ÚºÅ¶øÎªÈËËùÖª¡£1990Äê12Ô£¬SunÆô¶¯ÁËÒ»¸ö¿´ÉÏȥûʲôÒâ˼µÄǶÈëʽÈí¼þÏîÄ¿¡£È»¶ø£¬»ùÓÚC++µÄ¿ª·¢ºÜ¿ìÓöµ½ÁËÂé·³¡£Ò»¸ö´´ÐÂÐͼ¼Êõ¹«Ë¾µÄÌØÉ«Á¢¿ÌÏÔʾ³öÀ´£¬Ò»ÈºÌì²Å²»ÊÇÈ¥ÉîÈëC++£¬¶øÊÇÁí±Ùõè¾¶£¬·¢Ã÷ÁËJava¡£Õâ¸ö´«Ææ¹ÊÊÂÒѾ¾¡È˽ÔÖª£¬µ«ÊÇÆäÖÐËù°üº¬µÄ¾«ÉñȴʼÖÕÁîÈËÍû¿ÕÄý˼¡£
JavaµÄ·¢Ã÷£¬Ê¹µÃSunÕæÕýÓлú»áÔÚÈí¼þµÄÀúÊ·Ìì¿ÕÖзÅÉä³öÌ«ÑôµÄ¹ââ¡£Sun·¢Ã÷ÁËJava£¬²¢ÇÒÔÚ³¤´ïÊ®ÄêµÄʱ¼äÀïʼÖÕ×ßÔÚJava´ó³±µÄ×îǰ¶Ë¡£SunÊÇJavaµÄÀϼң¬ÊÇJava´È°®µÄĸÇ×£¬ÕâÒ»ÇÐÈκÎÈ˶¼¸Ä±ä²»ÁË¡£ËäÈ»SunËÆºõûÄܹ»´ÓJavaÖлñµÃÓ¦ÓеĽðÇ®»Ø±¨£¬µ«ÕâË¿ºÁûÓдìÉËSun¶ÔÓÚJavaµÄĸ°®£¬»¹ÓжÔÓÚJava´ó³±µÄÉáÎÒÆä˵ÄÁìµ¼Æø¸Å¡£
ËùÓÐÈ˶¼ÃÔÁµ¸»Óеĸоõ£¬µ«ÊÇÒ²³ÙÔç»áÒâʶµ½Ç®²»ÊÇÊÀÉÏ×¹óµÄ¶«Î÷¡£Õâ¸öÊÀ½ç²¢²»È±ÉÙ»á׬ǮµÄ¹«Ë¾£¬µ«ÊÇÄܹ»¿¿×Å´´ÐÂÐͼ¼ÊõÍÆ¶¯Õû¸öÊÀ½ç½ø²½µÄ¹«Ë¾È´ÊÇ·ïë÷ë½Ç¡£SunÓ¦¸Ã¸Ðµ½½¾°Á£¬ËûÃǽ«ÒòΪJava¶øÔÚÀúÊ·µÄÌì¿ÕÀï·¢Éä³öÌ«ÑôµÄ¹ââ¡£
IBM : Java¾¼ÃµÄ×î´óÊÜÒæÈË
ÎÄ/¶ñħ
Sun¹«Ë¾ÊÇJavaµÄ·¢Ã÷ÈË£¬µ«IBMÈ´ÊÇJava×î´óµÄÊÜÒæÕß¡£ÊÇIBMÇÀÕ¼ÁËÀûÈó·áºñµÄÓ¦Ó÷þÎñÆ÷Êг¡µÄÍ·°Ñ½»ÒΣ¬ÊÇIBMÔÚJava¼¼ÊõÉÏͶÈë×î¶àµÄ½ðÇ®£¬ÓµÓÐ×î´óµÄÓ°ÏìÁ¦ºÍ×îºÃµÄ¿ª·¢ÕßÉçÇø¡£¿ÉÒÔºÁ²»¿äÕŵØËµ£¬JavaʹIBMµÄÈí¼þÌåϵµÃµ½¸´ÐË£¬ÔÚijÖÖÒâÒåÉÏ£¬ÉõÖÁ¿ÉÒÔ˵£¬ÊÇJava´´ÔìÁËÕâÖÖ¸´ÐË¡£JavaÖ®ºóÓÖÀ´ÁËLinux£¬ÕâÖÖ½¨ÔìÔÚ²»ÊôÓÚ×Ô¼ºµÄƽ̨ÉÏÒÔ»ñµÃ³É¹¦µÄÀíÄî¸üÊDZäµÃ·Ç³£ÓÐÓ°ÏìÁ¦¡£ÕýÊÇÕâÖÖÀíÄîÖý¾ÍÁ˽ñÌìIBM ¡°°´Ðè¼ÆË㣬·þÎñΪÍõ¡±µÄÍõÕß·ç·¶¡£
2004ÄêÈýÔ£¬IBMÒÔJavaµÄ½â·ÅÕßµÄ×Ë̬½è»úÏ