java±àÂëת»»
³£¼ûµÄJAVA³ÌÐò°üÀ¨ÒÔÏÂÀà±ð£º
*Ö±½ÓÔÚconsoleÉÏÔËÐеÄÀà(°üÀ¨¿ÉÊÓ»¯½çÃæµÄÀà)
*JSP´úÂëÀࣨע£ºJSPÊÇServletsÀàµÄ±äÐÍ£©
*ServeletsÀà
*EJBÀà
*ÆäËü²»¿ÉÒÔÖ±½ÓÔËÐеÄÖ§³ÖÀà
ÕâЩÀàÎļþÖУ¬¶¼ÓпÉÄܺ¬ÓÐÖÐÎÄ×Ö·û´®£¬²¢ÇÒ³£ÓÃǰÈýÀàJAVA³ÌÐòºÍÓû§Ö±½Ó½»»¥£¬ÓÃÓÚÊä³öºÍÊäÈë×Ö·û£¬È磺ÔÚJSPºÍServletÖеõ½¿Í»§¶ËËÍÀ´µÄ×Ö·û£¬ÕâЩ×Ö·ûÒ²°üÀ¨ÖÐÎÄ×Ö·û¡£ÎÞÂÛÕâЩJAVAÀàµÄ×÷ÓÃÈçºÎ£¬ÕâЩJAVA³ÌÐòµÄÉúÃüÖÜÆÚ¶¼ÊÇÕâÑùµÄ£º
*±à³ÌÈËÔ±ÔÚÒ»¶¨µÄ²Ù×÷ϵͳÉÏÑ¡ÔñÒ»¸öºÏÊʵıà¼Èí¼þÀ´ÊµÏÖÔ´³ÌÐò´úÂë²¢ÒÔ.javaÀ©Õ¹Ãû±£´æÔÚ²Ù×÷ϵͳÖУ¬ÀýÈçÎÒÃÇÔÚÖÐÎÄwin2kÖÐÓüÇʱ¾±à¼Ò»¸öjavaÔ´³ÌÐò£»
*±à³ÌÈËÔ±ÓÃJDKÖеÄjavac.exeÀ´±àÒëÕâЩԴ´úÂ룬ÐγÉ.classÀà(JSPÎļþÊÇÓÉÈÝÆ÷µ÷ÓÃJDKÀ´±àÒëµÄ)£»
*Ö±½ÓÔËÐÐÕâЩÀà»ò½«ÕâЩÀ಼Êðµ½WEBÈÝÆ÷ÖÐÈ¥ÔËÐУ¬²¢Êä³ö½á¹û¡£
ÄÇô£¬ÔÚÕâЩ¹ý³ÌÖУ¬JDKºÍJVM¶ÔÕâЩÎļþÈçºÎ±àÂëºÍ½âÂë²¢ÔËÐеÄÄØ£¿
ÕâÀÒÔÖÐÎÄwin2k²Ù×÷ϵͳΪÀý˵Ã÷JAVAÀàÊÇÈçºÎÀ´±àÂëºÍ±»½âÂëµÄ¡£
µÚÒ»²½£¬ÎÒÃÇÔÚÖÐÎÄwin2kÖÐÓñà¼Èí¼þÈç¼Çʱ¾±àдһ¸öJavaÔ´³ÌÐòÎļþ(°üÀ¨ÒÔ ÉÏÎåÀàJAVA³ÌÐò)£¬³ÌÐòÎļþÔÚ±£´æÊ±Ä¬ÈϲÉÓÃÁ˲Ù×÷ϵͳĬÈÏÖ§³ÖGBK±àÂë¸ñʽ(²Ù×÷ϵͳĬÈÏÖ§³ÖµÄ¸ñʽΪfile.encoding¸ñʽ)ÐγÉÁËÒ»¸ö.javaÎļþ£¬Ò²¼´£¬java³ÌÐòÔÚ±»±àÒëǰ£¬ÎÒÃǵÄJAVAÔ´³ÌÐòÎļþÊDzÉÓòÙ×÷ϵͳĬÈÏÖ§³ÖµÄfile.encoding±àÂë¸ñʽ±£´æµÄ£¬ javaÔ´³ÌÐòÖк¬ÓÐÖÐÎÄÐÅÏ¢×Ö·ûºÍÓ¢ÎijÌÐò´úÂ룻Ҫ²é¿´ÏµÍ³µÄfile.encoding²ÎÊý£¬¿ÉÒÔÓÃÒÔÏ´úÂ룺
¡¡¡¡public class ShowSystemDefaultEncoding {
¡¡¡¡public static void main(String[] args) {
¡¡¡¡String encoding = System.getProperty("file.encoding");
¡¡¡¡System.out.println(encoding);
¡¡¡¡}}
µÚ¶þ²½£¬ÎÒÃÇÓÃJDKµÄjavac.exeÎļþ±àÒëÎÒÃǵÄJavaÔ´³ÌÐò£¬ÓÉÓÚJDKÊÇ ¹ú¼Ê°æµÄ£¬ÔÚ±àÒëµÄʱºò£¬Èç¹ûÎÒÃÇûÓÐÓÃ-encoding²ÎÊýÖ¸¶¨ÎÒÃǵÄJAVAÔ´³ÌÐòµÄ±àÂë¸ñʽ£¬Ôòjavac.exeÊ×ÏÈ»ñµÃÎÒÃDzÙ×÷ϵͳĬÈϲÉÓà µÄ±àÂë¸ñʽ£¬Ò²¼´ÔÚ±àÒëjava³ÌÐòʱ£¬ÈôÎÒÃDz»Ö¸¶¨Ô´³ÌÐòÎļþµÄ±àÂë¸ñʽ£¬JDKÊ×ÏÈ»ñµÃ²Ù×÷ϵͳµÄfile.encoding²ÎÊý(Ëü±£´æµÄ¾ÍÊDzÙ×÷ϵͳĬÈϵıàÂë¸ñʽ£¬ÈçWIN2k£¬ËüµÄֵΪGBK)£¬È»ºóJDK¾Í°ÑÎÒÃǵÄjavaÔ´³ÌÐò´Ófile.encoding±àÂë¸ñʽת»¯ÎªJAVAÄÚ²¿Ä¬ÈÏ µÄUNICODE¸ñʽ·ÅÈëÄÚ´æÖС£È»ºó£¬javac°Ñת»»ºóµÄunicode¸ñʽµÄÎļþ½øÐбàÒë³É.classÀàÎļþ£¬´Ëʱ.classÎļþÊÇUNICODE±àÂëµÄ£¬ËüÔÝ·Å
Ïà¹ØÎĵµ£º
ÀàµÄ³õʼ»¯ºÍ¶ÔÏó³õʼ»¯ÊÇ JVM ¹ÜÀíµÄÀàÐÍÉúÃüÖÜÆÚÖзdz£ÖØÒªµÄÁ½¸ö»·½Ú£¬Google ÁËÒ»±éÍøÂ磬ÓйØÀà×°ÔØ»úÖÆµÄÎÄÕµ¹ÊDz»ÉÙ£¬È»¶øÀà³õʼ»¯ºÍ¶ÔÏó³õʼ»¯µÄÎÄÕ²¢²»¶à£¬ÌرðÊÇ´Ó×Ö½ÚÂëºÍ JVM ²ã´ÎÀ´·ÖÎöµÄÎÄÕ¸üÊÇÏÊÓÐËù¼û¡£
±¾ÎÄÖ÷Òª¶ÔÀàºÍ¶ÔÏó³õʼ»¯È«¹ý³Ì½øÐзÖÎö£¬Í¨¹ýÒ»¸öʵ¼ÊÎÊÌâÒýÈ룬½«Ô´´úÂëת»»³É JVM ×Ö½ÚÂëºó£¬ ......
½ñÌì¹Û¿´ÁËÀ¶É½ÀÏʦjava±³ºóµÄÃØÃÜÏà¹ØÊÓÆµ£¬·¢ÏÖÒªÏëд³ö¸ßÐÔÄܵijÌÐò£¬Ò»¶¨Òª¶ÔÆäÔËÐÐÔÀíÒÔ¼°ÆäÔËÐл·¾³ÓÐÏ൱³Ì¶ÈµÄÁ˽⡣ÄÇClassLoaderÊÇÏ൱¹Ø¼üµÄÒ»¸ö²¿·Ö¡£
ÏÈ˵ÏÂjava³ÌÐòÔËÐеĻù±¾Á÷³Ì£¬ÏȽ«javaÎļþ±àÒëΪclassÎļþ£¬È»ºóͨ¹ýClassLoader£¨Àà¼ÓÔØÆ÷£©£¬¼ÓÔØµ½Runtime Data Area£¨ÀàËÆÓÚÄڴ棩ÖÐ ......
´óѧµÄʱºòÑ¡ÐÞ¹ýÒ»¸öѧÆÚÈÕÓµ±Ê±ÈÕÓïÀÏʦ¶ÔÎÒÃÇ˵£º“¶ÔÓÚÖйúÈËÀ´½²£¬Ñ§Ï°Ó¢ÓïÒ»°ãÊÇ¿Þ׎øÈ¥£¬Ð¦×ųöÀ´£»Ñ§Ï°ÈÕÓïÔòÊÇЦ׎øÈ¥£¬¿Þ×ųöÀ´”¡£Òâ˼¾ÍÊÇ˵ѧϰӢÓïµÄʱºò£¬ÈëÃŵÄʱºò±È½ÏÀ§ÄÑ£¬µ«ÊÇÖ»Òª¼á³ÖѧÏÂÈ¥£¬×ª±äÁ˺ºÓïµÄ˼άϰ¹ßʱ£¬×î½ü¿ÉÒÔ°ÑÓ¢ÓïѧµÃºÜºÃ¡£¶øÈÕÓﲻͬ£¬Ò»·½ÃæÒòΪÆäÓ뺺ÓïµÄ½ôÃÜ¹Ø ......
±³¾°¼ò½é£ºKMPËã·¨ÓÃÀ´´¦Àí×Ö·û´®Æ¥ÅäµÄ¡£¸øÄãA,BÁ½¸ö×Ö·û´®£¬¼ì²éB´®ÊÇ·ñÊÇA´®µÄ×Ó´®£¬ÀàËÆÓÚJavaµÄString.indexOf("")¡£Ö®ËùÒÔ½Ð×öKMP£¬ÊÇÒòΪÕâ¸öËã·¨ÊÇÓÉKnuth¡¢Morris¡¢PrattÈý¸öÌá³öÀ´µÄ£¬È¡ÁËÕâÈý¸öÈ˵ÄÃû×ÖµÄÍ·Ò»¸ö×Öĸ¡£
ÔÀí½éÉÜ£ºÕÒµ½Æ¥Åäʧ°ÜʱµÄ×îºÏÊʵĻØÍËλÖ㬶ø²»ÊǼòµ¥µÄ»ØÍ˵½×Ó´®µÄµÚÒ»¸ö×Ö·û£¨³£¹ ......