ƵµÀÖ±´ï - רÌâ - ÐÂÎÅ - ¼¼ÇÉ - ×éÍø - ¿ª·¢ - °²È« - web±à³Ì - ͼÏñ - ²Ù×÷ϵͳ - Êý¾Ý¿â - ½ÌÓý - ÂÃÓÎ - ½¡¿µ - ʱÉÐ - Çý¶¯ - Èí¼þ - ÓÎÏ· - ¶àýÌå - ERP - ÌÖÂÛ×é

ʹÓÃJSP¼¼Êõ¿ª·¢¶àÓïÑÔWebÓ¦ÓóÌÐò

À´Ô´£ºjava.sun.com ×÷ÕߣºNorbert ¡­ ³ö´¦£ºÇÉÇɶÁÊé 2006-10-13 ½øÈëÌÖÂÛ×é

    JavaServer Pages (JSP) ¼¼ÊõÏÖÒѳÉΪÉîÊÜ Web Ó¦ÓóÌÐò¿ª·¢Õß»¶Ó­µÄ¹¤¾ß¡£ ʹÓà JSP ¼¼Êõ£¬¿ª·¢Õß²»ÐèÒªÆäËûµÄ±à³Ì֪ʶ¾Í¿ÉÒÔÉè¼Æ³ö¶¯Ì¬µÄ web ÍøÒ³¡£ ͬʱ£¬Web ¿ª·¢Õß¿ÉÒÔʹÓÃÒ»ÖÖ¿ÉÀ©Õ¹µÄ±ê¼Ç»úÖÆÀ´¹ÜÀí»ù´¡Èí¼þ×é¼þµÄ¹¦ÄÜ¡£

ͨ¹ý Java ±ê×¼ÖÆ¶¨×éÖ¯£¨Java Community Process£©¿ª·¢µÄÒ»¸öÀ©Õ¹¹¦ÄÜ¿ÉΪ¶àÓïÑÔÓ¦ÓóÌÐòµÄ¿ª·¢Ìṩ¸üÓÐÁ¦µÄÖ§³Ö¡£ JavaServer Pages ±ê×¼±ê¼Ç¿â³ýÁËÆäËûһЩ¹¦ÄÜ£¬»¹¶¨ÒåÁËÒ»Ì׿ÉʵÏÖ±¾µØ»¯ºÍµØÇøÃô¸Ð£¨locale-sensitive£©¸ñʽ»¯µÄ±ê¼Ç¡£ÐÐÎÄ·½Ã棬±¾ÎÄÊ×ÏÈ¶Ô JavaServer Pages ¼¼Êõ½øÐÐÁ˼òÒª½éÉÜ£¬ÒÔʹÄúÄܹ»¸üºÃµØÀí½âÈçºÎʹÓÃËüÃǽâ¾ö¹ú¼Ê»¯µÄÎÊÌâ¡£ È»ºó£¬ÎÒ»áÕë¶Ô¶àÓïÑÔ web Ó¦ÓóÌÐòµÄ¿ª·¢ÌÖÂÛ¼¸¸öºËÐÄÎÊÌ⣬²¢½éÉÜÈçºÎʹÓà JavaServer Pages ¼¼Êõ½â¾öËüÃÇ£ºÕâЩÎÊÌâ°üÀ¨µØÇøÈ·¶¨ºÍ±¾µØ»¯¡¢×Ö·û±àÂë¡¢¸ñʽ»¯ÒÔ¼°½âÎö¡£

JavaServer Pages ¼¼Êõ

    JavaServer Pages£¨ºÍ¼¸ÖÖÏà¹Ø¼¼Êõ£©¹¹³ÉÁË web Ó¦ÓóÌÐòµÄ±íʾ²ã¡£ ʹÓà JSP ¼¼Êõ£¬¿ª·¢Õß¿ÉÒÔ´´½¨¶¯Ì¬µÄ web Ò³Ãæ£¬ÕâÐ©Ò³Ãæ¿ÉÒÔÓëÉÌÒµÂß¼­£¨business logic£©¡¢Êý¾Ý¿âÒÔ¼°ÆäËû¿É´ÓÍøÂçÉÏ»ñÈ¡µÄ·þÎñÐγɻ¥¶¯¹ØÏµ¡£

JavaServer Pages

    ʹÓà JSP ¼¼Êõ¿ª·¢µÄÍøÒ³½áºÏÁË HTML¡¢XML »òÆäËûº¬ÓÐÀàËÆ XML ±ê¼Ç£¨ÕâЩ±ê¼ÇÓë»ù´¡Èí¼þ¿âÁ¬½Ó£©µÄ¾²Ì¬ÄÚÈÝ£¬Í¨³£ÕâЩÈí¼þ¿âʹÓà Java ±à³ÌÓïÑÔ±àд¡£ ÔÚÕâÖÖ»·¾³ÖУ¬·Ç³£ÖØÒªµÄ Java ¼¼ÊõÓÐ JavaBeans ×é¼þ¼Ü¹¹£¨×÷Ϊ JSP ºÍ Java ÀàÖ®¼äµÄ³£¹æÓÃ;½Ó¿Ú£©¡¢ÓÃÓÚ·ÃÎÊ SQL Êý¾Ý¿âµÄ Java Êý¾Ý¿âÁ¬½Ó£¨JDBC£©API ÒÔ¼°¸÷ÖÖÓÃÓÚ XML ´¦ÀíµÄ¿â¡£

    JSP Ò³Ãæ±¾Éí°´ÕÕ servlet ¸ñʽ±»±àÒëΪ Java ´úÂ룬ÒÔ±ãÖ´ÐС£ Servlet ÊÇ web ·þÎñÆ÷µÄÀ©Õ¹£¬Ëü±»±àÒë²¢¹ØÁªÖÁ·þÎñÆ÷£¬´Ó¶ø¿ÉÒÔ»ñµÃ±È½Å±¾ÓïÑÔ¸ü¿ìµÄÖ´ÐÐËÙ¶È¡£ Servlet Ö±½ÓÒÔ Java ±à³ÌÓïÑÔ±àд£¬²¢¾­³£Óë JSP ÍøÒ³Ò»ÆðʹÓã¬ÆäÖÐ servlet ×÷Ϊ¿ØÖƲ¿·Ö¶ø JSP Ò³Ãæ×÷ΪӦÓóÌÐòµÄÊÓͼ²¿·Ö¡£

    JavaServer Pages ºÍµ×²ãµÄ servlet ¼¼ÊõΪ´¦Àí HTTP ÇëÇóºÍ»ØÓ¦ÐÅÏ¢£¬ÒÔ¼°Ê¹Óà Cookies »ò URL ÖØÐ´½øÐлỰά»¤¶¼ÌṩÁ˹㷺µÄÖ§³Ö¡£Ê¹Óà JSP ¼¼ÊõµÄÒ»¸öºÜÖØÒªµÄÔ­ÒòÔÚÓÚËü¿ÉÒÔ½«ÍøÒ³×÷ÕߺÍÓ¦ÓóÌÐò¿ª·¢ÕߵŤ×÷½øÐзÖÀë¡£ ¾¡¹Ü¿ÉÒÔ½« Java Óï¾äÖ±½ÓǶÈë JSP ÍøÒ³£¬µ«ÊÇ£¬¿ª·¢ÕßÃÇÒѾ­ÈÏʶµ½×îºÃ±ÜÃâÈç´Ë£¬¶øÏÖÔÚ¸üÇãÏòÓÚʹÓÃ×Ô¶¨Òå±ê¼Ç¡£

JavaServer Pages ±ê×¼±ê¼Ç¿â

JavaServer Pages ±ê×¼±ê¼Ç¿â£¨JSTL£©°üº¬ÁËһϵÁк­¸ÇÊý¸ö¹¦ÄÜÁìÓòµÄ×Ô¶¨Òå²Ù×÷£¬ÕâЩ¹¦ÄÜÔÚ JSP ÍøÒ³Öо­³£±»Ê¹Óᣠ¸Ã¿â½¨Á¢ÔÚÐí¶à²ÎÓëÕß¿ª·¢×Ô¼ºµÄ¿âʱËù»ñµÃµÄ¾­Ñé»ù´¡Ö®ÉÏ£¬ËüÌṩÁËÒ»ÖÖÓ¦ÓóÌÐò¿ÉÒÔÒÀ¿¿µÄ±ê×¼½Ó¿Ú£¬²¢ÇÒ¿ÉÒÔ¶ÀÁ¢ÓÚËûÃÇÔËÐеķþÎñÆ÷Ö®Íâ¡£

³ýÁË×Ô¶¨Òå±ê¼Ç£¬JSTL »¹ÒýÈëÁËÒ»ÖÖ±í´ïÓïÑÔ£¬ÕâÖÖÓïÑÔÔ˽øÒ»²½µØ¼õÉÙÁËÔÚ JSP ÍøÒ³ÖÐʹÓýű¾ÓïÑÔµÄÐèÇó£¬Í¬Ê±»¹Òý½øÁ˱ê¼Ç¿âÑéÖ¤³ÌÐòÒÔÏÞÖÆÔÚ JSP ÍøÒ³É϶Խű¾ºÍ±ê¼Ç¿âµÄʹÓᣠÕâÖָĽø°æ±¾µÄ±í´ïÓïÑÔ£¬ÒÔ¼°ÏÞÖÆ½Å±¾µÄ¹¦ÄÜÒÑÔÚËæºó±»¼¯³Éµ½ JSP 2.0 ¹æ·¶Ö®ÖУ¬ËùÒÔÖ»ÓÐʹÓà JSP 1.2 ʱ²ÅÒªÇó JSTL¡£

×Ô¶¨Òå²Ù×÷°üÀ¨µÄÖ÷ÒªÄÚÈÝÊÇ£º

  • ±äÁ¿²Ù×÷£º ¡°ºËÐÄ¡±¿âÖеÄһЩ²Ù×÷£¬¿ÉÔÚ²»Í¬µÄÁìÓò£¨ÍøÒ³¡¢ÇëÇ󡢻ỰºÍÓ¦ÓóÌÐò£©Öж¨Ò塢ɾ³ý±äÁ¿»òÕß½«±äÁ¿Ö²ÈëÉú³ÉµÄÒ³ÃæÖС£
  • ¿ØÖÆÁ÷£º ¡°ºËÐÄ¡±¿âÖеļ¸ÖÖ²Ù×÷£¬ÌṩÁË»ùÓÚ±ê¼ÇµÄ¿ØÖÆÁ÷½á¹¹£¨ÀýÈçÌõ¼þºÍµü´úÆ÷£©£¬ÒÔ¼õÉÙ¶ÔǶÈë½Å±¾ÓïÑÔ´úÂëµÄÐèÇó¡£
  • URL Ïà¹Ø²Ù×÷£º ¡°ºËÐÄ¡±¿âÖеÄһЩ²Ù×÷£¬¿ÉÈà JSP ÍøÒ³µ¼ÈëÓÉ URL ¶¨ÒåµÄÄÚÈÝ£¬¿É½«ÄÚ²¿ÐÎʽµÄ URL ÖØÐ´ÎªÍⲿÐÎʽ£¨Õâ¿ÉÄܰüÀ¨ÊÕ¼¯»á»°¸ú×ÙÐÅÏ¢£©»òÖØÐ¶¨ÏòÖÁÒ»¸ö²»Í¬µÄÍøÒ³¡£
  • XML ´¦Àí£º ¡°xml¡±¿âÖеIJÙ×÷£¬°üÀ¨½âÎö XML Îĵµ²¢Ê¹Óà XPath ±í´ïʽÀ´½âѹËõÄÚÈÝ£¬»ùÓÚ XPath ±í´ïʽµÄ¿ØÖÆÁ÷ÒÔ¼°Ê¹Óà XSLT Ñùʽ±í½øÐеÄת»»¡£
  • ¹ØÏµÊý¾Ý¿â·ÃÎÊ£º ¡°sql¡±¿âÖеIJÙ×÷£¬ÔÊÐí web Ó¦ÓóÌÐòÖ´Ðмòµ¥µÄ SQL ²éѯºÍ¸üС£
  • ¹ú¼Ê»¯ºÍ¸ñʽ»¯£¨±¾ÎĵÄÖÐÐÄÄÚÈÝ£©£º¡°fmt¡±¿âÖеIJÙ×÷£¬Ö§³ÖµØÇøÈ·¶¨¡¢±¾µØ»¯¡¢×Ö·û±àÂë¾ö¶¨ºÍµØÇøÃô¸Ð¸ñʽ»¯Óë½âÎö¡£

µØÇøÈ·¶¨ºÍ±¾µØ»¯

Éè¼Æ¶àÓïÑÔ web Ó¦ÓóÌÐòʱ£¬Äú±ØÐëÊ×ÏȾö¶¨ÈçºÎÈ·¶¨Óû§µÄÓïÑԺ͵ØÇøÊ×Ñ¡ÏÒÔ¼°ÈçºÎʹÕâЩÊ×Ñ¡ÏîÓë¸ÃÓ¦ÓóÌÐòºÍ»ù´¡µÄ Java ÔËÐл·¾³Ö§³ÖµÄÒ»Ì×µØÇøÉèÖÃÏàÆ¥Åä¡£ Õⲿ·ÖÊ×ÏÈÃèÊöÁË web Ó¦ÓóÌÐò±ØÐë¾ßÓеÄÍⲿ»·¾³ºÍÒªÇó¡£ ÏÂÒ»²½£¬ÎÒÃǽ«Á˽âÏà¹ØµÄ Java 2 Standard Edition (J2SE) ƽ̨ÌṩµÄ¹¦ÄÜ£¬×îºóÎÒÃǽ«Á˽â JavaServer Pages ±ê×¼±ê¼Ç¿âµÄ±ê¼ÇÈçºÎÁ¬½Óµ½»·¾³ºÍ J2SE ÖС£

È·¶¨Óû§Ê×Ñ¡Ïî

web Ó¦ÓóÌÐòÓÐÁ½ÖÖ·½·¨À´È·¶¨Óû§µÄÓïÑÔÊ×Ñ¡ÏÊ×ÏÈ£¬Ëü¿ÉÒÔÓÉä¯ÀÀÆ÷ʹÓà HTTP ÇëÇó±¨Í·×Ö¶Î Accept-Language ´«ÊäÖÁ·þÎñÆ÷µÄÓïÑԺ͵ØÇøÊ×Ñ¡Ïî¡£ ¾¡¹Ü±ê×¼¹æ¶¨ÁËÐí¶àÓïÑÔ±ê¼Ç£¬µ«ÊÇÒ»°ãʹÓà ISO 639 ÓïÑÔ´úÂ루Èç ja ΪÈÕÎÄ£©ºÍ ISO 3166 ¹ú¼Ò´úÂ루Èç IT ´ú±íÒâ´óÀû£©¡£ ä¯ÀÀÆ÷ͨ³£ÈÃÓû§´´½¨Ò»¸öÓïÑÔÁбí×÷ΪÆäÊ×Ñ¡ÏîµÄÒ»²¿·Ö¡£ È»¶ø£¬ÕâÖÖ·½·¨²»Ì«¿É¿¿£»Óû§²»Ò»¶¨»á´´½¨¸ÃÁÐ±í£¬¶øÇÒ¸ÃÁÐ±í²»Ò»¶¨»á°üº¬¸ÃÓ¦ÓóÌÐòÖ§³ÖµÄµØÇøÉèÖᣠÓÉÓÚÕâЩ²»È·¶¨ÐÔ£¬¶àÓïÑÔÓ¦ÓóÌÐòͨ³£²ÉÓõڶþÖÖ·½·¨£ºËûÃÇÈÃÓû§Ö±½Ó´ÓÖ§³ÖÓïÑÔµÄÁбíÖÐÑ¡Ôñ£¬²¢°ÑÑ¡ÔñµÄÓïÑÔ×÷ΪÓû§×ÊÁϵÄÒ»²¿·Ö½øÐб£´æ£¬»òÖ»ÔÚ½øÐиûỰµÄʱºò±£´æ¡£ Ò»¸öºÃµÄ·½·¨ÊÇ£¬ÔÚ¶ÔÓû§Ò»ÎÞËùÖªµÄÇé¿öÏ£¬Ê×ÏÈʹÓà Accept-Language ÐÅÏ¢£¬ÔÚÓ¦ÓóÌÐòµÄ¿ªÊ¼Ò³ÃæÖиøÓèÓû§Ö±½ÓÑ¡ÔñÓïÑԵĻú»á¡£

½« Accept-Language µØÇøÉèÖÃÖ÷ÒªÓÃÓÚÓïÑÔºÍÎÄ»¯Ê×Ñ¡ÏîÊÇûʲôÒâÒåµÄ¡£ ÀýÈ磬ËüÃDz»Ó¦¸Ã±»½âÊÍΪ±íʾÓû§¾ÓסµÄ¹ú¼Ò¡£ ͬÑù£¬ÔںܶàÇé¿öÏÂä¯ÀÀÆ÷ÌṩµÄµØÇøÉèÖÃÖ»ÓÐÒ»¸öÓïÑÔ´úÂ룬¶øÒ»Ð©µØÇøÃô¸ÐµÄ¹¦ÄÜ£¨ÀýÈ磬ÈÕÆÚ¸ñʽ£©ÔòËæ×Źú¼ÒµÄ²»Í¬¶øÏàÒì¡£ ÔںܶàÇé¿öÏ£¬Í¨¹ýÓïÑÔ¼ÙÉèÖ÷Òª¹ú¼ÒµÄ¹æ·¶ÊǺÏÀíµÄ£¨Èç¹ûûÓÐÖ¸¶¨¹ú¼Ò£©£»ÀýÈ磬Èç¹ûÖ¸¶¨ÁËÈÕ±¾ÓÔò¿ÉʹÓÃÈÕ±¾Í¨ÓõÄÈÕÆÚ¸ñʽ¡£ È»¶ø£¬Èç¹ûÊǸù¾Ý¹ú¼Ò¶øÉèÖõÄÖØÒª¹¦ÄÜ£¨ÀýÈç»õ±Ò£©£¬Ôò±ØÐë¸øÓû§Ò»¸ö»ú»áÀ´ÐÞÕý¸Ã¼ÙÉè¡£

ÔÚÐí¶àÇé¿öÏ£¬web Ó¦ÓóÌÐòÊÇÓÉÈô¸É×é¼þ×éºÏ¶øÀ´µÄ£¬ÕâЩ×é¼þ¿ÉÄÜÒѾ­±¾µØ»¯Îª²»Í¬µÄÓïÑÔ¡£ Ò»¸öÌØ±ðÖµµÃÒ»ÌáµÄ×é¼þÊÇ Java ÔËÐл·¾³£¬ËüÔÚһЩµØÇøÃô¸ÐÇøÓò¿ÉÄܾ߱¸Ö§³Ö³¬¹ý 40 ÖÖÓïÑÔÖÐµÄ 100 ÖÖÇøÓòÉèÖõŦÄÜ£¨ÀýÈçÈÕÆÚ¸ñʽ£©£¬Ô¶Ô¶³¬³öÁ˵äÐ굀 web Ó¦ÓóÌÐò¡£ Òò´Ë£¬Ó¦ÓóÌÐò¿ª·¢Õß±ØÐë¾ö¶¨ÊÇ·ñÔÚÕû¸öÓ¦ÓóÌÐòÖÐÏÞÖÆËùÖ§³ÖÓïÑԵı¾µØ»¯¹¦ÄÜ£¬»òÕß³ä·Ö·¢»Óÿ¸ö×é¼þµÄ¹¦ÄÜÓÅÊÆ¡£ µÚÒ»ÖÖ·½·¨µÄÓÅÊÆÔÚÓÚÓû§¿ÉÒÔ¿´µ½µÄÈ«²¿Ò³Ã涼ʹÓÃͬһÓïÑÔ£¬¶øµÚ¶þÖÖ·½·¨¿ÉÄܵ¼ÖÂÒ³ÃæÖдæÔÚ²»Í¬µÄÓïÑÔ¡ª¡ªÆäÖÐÒ»ÖÖÓïÑÔ³öÏÖÔÚ¾ø´ó¶àÊýÎı¾ÖУ¬¶øÁíÒ»ÖÖÔò³öÏÖÔÚÀýÈçÈÕÆÚµÄ¸ñʽÖС£

Java 2 Standard Edition Platform Öеı¾µØ»¯

ΪÁËÁ˽â JSTL ÈçºÎÈ·¶¨Ó¦ÓóÌÐò±»ÄÄЩµØÇøÉèÖÃÖ§³Ö£¬ÎÒÃÇÀ´¿´¿´ÔÚ»ù´¡µÄ Java 2 Standard Edition ƽ̨ÖÐÊÇÈçºÎ½øÐб¾µØ»¯µÄ¡£ java.util Èí¼þ°üµÄºËÐÄÖ÷ÒªÓÐÁ½ÖÖÀࣺLocale ºÍ ResourceBundle¡£

Locale ¶ÔÏóÖ»ÊÇÓÃÀ´È·¶¨µØÇøÉèÖõģºËüÃǽáºÏÁË ISO 639 ÓïÑÔ´úÂ루ÀýÈ磬ja ´ú±íÈÕÎÄ£©ºÍ ISO 3166 ¹ú¼Ò´úÂ루ÀýÈ磬IT ´ú±íÒâ´óÀû£©£¬»¹¿ÉÄܰüº¬Ò»¸ö£¨·Ç±ê×¼»¯µÄ£©±äÁ¿×Ö·û´®¡£ ×¢Ò⣬HTTP µÄµØÇø±êʶ·ûʹÓÃÏàͬµÄ ISO ±ê×¼£¬ËùÒÔ¶Ô±Èͨ³£±È½ÏÈÝÒס£

ResourceBundle ¶ÔÏóÊDZ¾µØ»¯¶ÔÏóµÄÈÝÆ÷£¬Ðγɳɼü/Öµ¶Ô¡£ Ò»¸ö»ù´¡×ÊÔ´Êø¶¨ÒåÁËÒ»¸ö»ù´¡ÊøµÄÃû³Æ¡¢Ò»Ì×¼üÒÔ¼°Ä¬ÈÏÖµ£¨Í¨³£ÊÇÓ¢ÎÄÖµ£¬µ«²»ÊDZØÐëµÄ£©¡£ ÀýÈ磬һ¸ö¼òµ¥µÄ Messages ×ÊÔ´Êø¿ÉÄܶ¨Òå greeting-day ¼üµÄĬÈÏֵΪ Hello¡£ ÆäËûµÄÌØ¶¨ÓïÑԺ͹ú¼ÒÊø¿ÉÒÔ±»¶¨Ò壬ÆäÃû³ÆÓÉ»ù´¡Ãû³Æ×é³É£¨Í¨¹ýºó׺ָʾÆäÓïÑÔ¡¢¹ú¼ÒºÍ±äÁ¿£©²¢ÌṩÒѱ¾µØ»¯µÄÖµ¡£ ÀýÈ磬µÂÓï Messages_de ×ÊÔ´Êø¿ÉÒÔ¸ø³ö Guten Tag Öµ£¨Õë¶Ô greeting-day ¼ü£©£¬¶øÒ»¸ö°ÂµØÀû Messages_de_AT Êø¿ÉÄÜÓà Servus ÖµÀ´¸²¸Ç¸ÃÖµ¡£ ×ÊÔ´Êø¿ÉÒÔ×÷Ϊ Java Àà»ò¼òµ¥µÄ¡°ÊôÐÔ¡±Îı¾ÎļþÀ´Ö´ÐС£

JavaServer Pages Ó¦ÓóÌÐòµÄ±¾µØ»¯·½·¨

Òª¶Ô»ùÓÚ JavaServer Pages ¼¼ÊõµÄÓ¦ÓóÌÐò½øÐб¾µØ»¯£¬·½·¨Í¨³£ÓÐÁ½¸ö¡£ µÚÒ»¸ö·½·¨ÊÇʹÓùú¼Ê»¯µÄÒ³Ãæ£¬ÕâÐ©Ò³Ãæ³£¿ÉÒÔͨ¹ý×Ô¶¨Òå±ê¼Ç´Ó×ÊÔ´Êø»ñµÃÓëÌØ¶¨µØÇøÉèÖÃÏà¹ØµÄÄÚÈÝ¡£ Èç¹ûÒ³ÃæÐèÒª±£³Ö¸´ÔӵĽṹ²¢ÓëËùÓеØÇøÉèÖÃͬ²½£¬Ôòͨ³£»á²ÉÈ¡ÕâÖÖ·½·¨¡£ µÚ¶þÖÖ·½·¨Ê¹Óõ¥¶ÀµÄÌØ¶¨µØÇøÉèÖÃÒ³ÃæÒÔ¼°·Ö·¢µ½Êʵ±Ò³ÃæµÄ servlet£¨È¡¾öÓÚÓû§µÄµØÇøÑ¡Ôñ£©¡£ Èç¹ûÒ³Ãæ°üº¬µÄÖ÷ÒªÊÇÎı¾»òÕßµØÇøÉèÖüäµÄ½á¹¹½ØÈ»²»Í¬Ê±£¬Ôòͨ³£»á²ÉÈ¡ÕâÖÖ·½·¨¡£

µØÇøÈ·¶¨ºÍ JSTL Öеı¾µØ»¯

JSTL ¹¹½¨ÓÚ J2SE ¹¤¾ßÖ®ÉÏ£¬Ëü¿É½øÐеØÇøÈ·¶¨ºÍ±¾µØ»¯¡£ ʹÓÃÈκÎÒ»ÖÖ JSP ±¾µØ»¯·½·¨£¨ÈçÉÏËùÊö£©¾ù¿ÉÒÔ½øÐеØÇøÈ·¶¨£¬¶ø±¾µØ»¯¹¦ÄܵÄÄ¿µÄÊÇΪ¹ú¼Ê»¯µÄÒ³ÃæÌṩ֧³Ö¡£

JSTL ¶ÔÉÏÊöÁ½ÖÖÈ·¶¨Óû§µØÇøÊ×Ñ¡ÏîµÄ·½·¨¶¼Ìṩ֧³Ö¡£ Ó¦ÓóÌÐò¿ÉÒÔʹÓà JSTL µÄ <fmt:setLocale> ²Ù×÷£¬Ö¸¶¨Ò»¸ö¹Ì¶¨µÄµØÇø£¨Í¨³£ÊÇÓû§´ÓÖ§³ÖÓïÑÔÁбíÖÐËùÖ±½ÓÑ¡ÔñµÄ£©¡£ Ò»µ©Ê¹ÓÃÁ˸òÙ×÷£¬Ö¸¶¨µÄµØÇøÉèÖý«Ó¦ÓÃÓÚËùÓеĵØÇøÃô¸Ð²Ù×÷ÖС£ Èç¹ûûÓÐʹÓà <fmt:setLocale> ²Ù×÷£¬µØÇøÃô¸Ð²Ù×÷½«»á´ÓµØÇøÑ¡ÔñÁбíÖÐËÑË÷µÚÒ»ÖÖÖ§³ÖµÄµØÇøÉèÖã¬ÕâЩµØÇøÉèÖÃͨ³£ÓÉ Accept-Language ±¨Í·Ìṩ¡£

ÏÂÃæÊÇһЩÄú¿ÉÒÔÓÃÓÚ web Ó¦ÓóÌÐò¿ªÊ¼Ò³ÃæµÄ´úÂëÆ¬¶Ï¡£ ÕâЩ´úÂëÆ¬¶Ï¿ÉÈÃÓû§·Ç³£ÇáËɵØÑ¡ÔñËû»òËýµÄµØÇøÉèÖᣠ¼ÙÉèÕâЩ´úÂëÊÇ locale-choice.jsp Ò³ÃæÖеÄÒ»²¿·Ö£º

<%-- Interpret user's locale choice --%>
<c:if test="${param['locale'] != null}">
  <fmt:setLocale value="${param['locale']}" scope="session" />
</c:if>
 
<%-- Offer locale choice to user --%>
<a href="locale-choice.jsp?locale=en-US">USA</a> -
<a href="locale-choice.jsp?locale=de-DE">Deutschland</a> -
<a href="locale-choice.jsp?locale=ja-JP">ÈÕ±¾</a>
 
<%-- Use URL rewriting to ensure proper session tracking --%>
<form method="get" action="<c:url value='/locale-choice.jsp' />">
  <input type=submit value="Stay in session">
</form>

µÚÒ»²¿·Ý£¨´Ë²¿·Ö±ØÐëÔÚÉú³ÉµÄ HTML Ò³ÃæÈκÎÄÚÈÝ֮ǰ£©±íʾÓû§µÄµØÇøÑ¡Ôñ£¬¸ÃÑ¡Ôñ×÷Ϊһ¸öÇëÇó²ÎÊýÏÔʾÔÚ JSP Ò³ÃæÉÏ¡£ Èç¹û¶¨ÒåÁË locale ²ÎÊý£¬ÔòËü½«±»ÓÃÓÚ½øÐлỰµÄµØÇøÉèÖá£

µÚ¶þ²¿·Ö£¨´Ë²¿·ÖÊÇÉú³ÉµÄ HTML Ò³ÃæÄÚÈݵÄÒ»²¿·Ö£©ÎªÓû§ÌṩÁË·µ»ØÍ¬Ò»Ò³ÃæµÄÁ´½Ó£¬µ«ÊǸù¾ÝÑ¡¶¨µÄ¹ú¼ÒÌṩÁË locale ²ÎÊýÉèÖᣠעÒ⣬ÔÚ±¾µØÓïÑÔÖÐÒѾ­¸ø³ö¹ú¼ÒµÄÃû³Æ£¬ËùÒÔ¼´Ê¹Ò³ÃæµÄÆäËû²¿·ÖÒѾ­±¾µØ»¯ÎªÓû§²»ÄÜʶ±ðµÄÓïÑÔ£¬µ«ÊÇÓû§ÈÔÈ»¿ÉÒÔÈÝÒ×µØÊ¶±ðÕâЩÃû³Æ¡£ ÀýÈ磬¡°ÈÕ±¾¡±ÊÇ¡°ÈÕ±¾¡±µÄÊý×Ö×Ö·ûÒýÓ㬼´¡°ÈÕ±¾¡±µÄÈÕÓïµ¥´Ê¡£ аæµÄä¯ÀÀÆ÷Èç¹û×°ÓÐÈÕ±¾×ÖÌ壬½«»áÕýÈ·µØ×ª»»ÕâЩÎı¾£»¶ÔÓھɰæµÄä¯ÀÀÆ÷£¬Ê¹ÓÃͼƬÔò¿ÉÄܸüºÏÊÊһЩ¡£

×îºóÒ»²¿·ÖÏÔʾÈçºÎʹÓà <c:url> ±ê¼ÇÉú³É URL£¬´Ë URL °üº¬ÁËÒ»¸ö»á»° ID£¬Èç¹ûÐèÒª¶Ô¸Ã»á»°½øÐÐ×·×ٵϰ£¨Èç¹ûÓû§ÆôÓÃÁË cookies£¬Ôò cookies ½«´úÌæ URL ÖØÐ´£©¡£ Õ⽫ȷ±£Ò»µ©Ñ¡ÔñÁ˵ØÇøÉèÖ㬸ÃÑ¡Ôñ½«Ó¦ÓÃÓڸà web Ó¦ÓóÌÐòÖеÄËùÓÐÒ³Ãæ¡£

Èç¹û´Ó web Ó¦ÓóÌÐò±¾ÉíµÄÓû§½çÃæÖÐÑ¡ÔñÁ˵ØÇøÉèÖã¬È»ºóʹÓà <fmt:setLocale> ½øÐÐÉèÖã¬ÄÇô¾Í¿ÉÒÔ¼ÙÉè¸ÃÓ¦ÓóÌÐòȷʵ֧³Ö´ËµØÇøÉèÖᣠÁíÒ»·½Ã棬Èç¹ûûÓÐʹÓà <fmt:setLocale> ²¢ÇÒ JSTL ±ØÐë´Ó Accept-Language ±¨Í·ÖеĵØÇøÉèÖÃÁбíÖÐÕÒµ½Ò»¸öÖ§³ÖµÄµØÇøÉèÖã¬ÄÇôÇé¿ö»á±äµÃ¸ü¸´ÔÓ¡£

Òª¾ö¶¨ÄĸöµØÇøÉèÖÃÊDZ»Ö§³ÖµÄ£¬JSTL ½«²Î¿¼¸ÃÓ¦ÓóÌÐòËùʹÓõÄ×ÊÔ´Êø¡£ ÓÐÁ½ÖÖ²Ù×÷¿ÉÓÃÓÚ·ÃÎÊ×ÊÔ´Êø£º<fmt:bundle> ºÍ <fmt:setBundle>¡£ ËüÃǵĻù±¾¹¦ÄÜÊÇÏàͬµÄ£ºËüÃDzéѯһ¸ö×ÊÔ´Êø²¢´´½¨Ò»¸ö¡°±¾µØ»¯»·¾³¡±£¬ÔÚÕâ¸ö¡°±¾µØ»¯»·¾³¡±Öаüº¬Á˶ԸÃ×ÊÔ´ÊøºÍÓÃÓÚÇëÇó¸Ã×ÊÔ´ÊøµÄµØÇøÉèÖõÄÒýÓá£

<fmt:bundle> ºÍ <fmt:setBundle> ²Ù×÷ËùʹÓõÄ×ÊÔ´Êø²éѯÔÊÐí¶à´ÎÇëÇóµØÇøÉèÖã¨ÕâÑùËü¾Í¿ÉÒÔ´¦ÀíÓÉ Accept-Language ±¨Í·ÌṩµÄÁÐ±í£©£¬²¢Ê¹ÓÃÓÉ web Ó¦ÓóÌÐò¶¨ÒåµÄ±¸Óã¨fallback£©µØÇøÉèÖᣠÈç¹ûʹÓà <fmt:setLocale> ²Ù×÷ÉèÖõØÇø£¬ÄÇô <fmt:bundle> ºÍ <fmt:setBundle> ²Ù×÷½«ÇëÇóÓÃÓڸõØÇøÉèÖõÄÊø£¬»òÕߣ¬Èç¹û²»³É¹¦µÄ»°£¬½«ÇëÇóÓÃÓÚ±¸ÓõØÇøÉèÖõÄÊø¡£ Èç¹ûûÓÐʹÓà <fmt:setLocale>£¬ËæºóµÄ²Ù×÷½«ÇëÇóÓÃÓÚÓÉ Accept-Language ±¨Í·ÌṩµÄµØÇøÉèÖúͱ¸ÓõØÇøÉèÖã¬Ö±µ½ÇëÇó³É¹¦¡£ ÔÚÿÖÖÇé¿öÏ£¬»ù±¾²éѯ£¨²éÑ¯ÊøµÄ»ù±¾Ãû³ÆºÍÒ»¸öÇëÇóµØÇøÉèÖ㩽«ÎªÇëÇóµØÇøÉèÖñ¾ÉíËÑË÷Ò»¸ö×ÊÔ´Êø£¬ËæºóËÑË÷¸ü¼òµ¥µÄµØÇøÉèÖã¨Ê×ÏÈ´ÓÇëÇóµØÇøÉèÖÃÖÐÉáÆú±äÁ¿£¬È»ºóÉáÆú¹ú¼Ò×é¼þ£©¡£ Èç¹ûÈ«²¿µÄÇëÇóµØÇøÉèÖÃÒÔ¼°±¸ÓõØÇøÉèÖõIJéѯ¶¼Ê§°Ü£¬ÄÇô½«Ê¹Óûù´¡Êø¡£

ÒÔÏÂÊÇһЩÀý×Ó¡£ ÈÃÎÒÃǼÙÉèij¸öÓ¦ÓóÌÐòÓµÓÐÓÃÓÚ en¡¢zh_CN¡¢zh_TW¡¢ja ºÍ ko µÄÊø¡£ ±¸ÓõØÇøÉèÖñ»ÉèÖÃΪ en¡£ ûÓÐʹÓà <fmt:setLocale> ±ê¼Ç¡£ ϱíÏÔʾ×îÖÕ±¾µØ»¯»·¾³µÄÊøºÍµØÇøÉèÖã¨ÓÃÓÚһЩÇëÇóµØÇøÉèÖÃÁÐ±í£©£º

±»ÇëÇóµÄµØÇøÉèÖÃ

½á¹ûÊø

½á¹ûµØÇøÉèÖÃ

zh_SG¡¢zh_CN

zh_CN

zh_CN

zh¡¢ja

ja

ja

es_MX

en

en

en_US

en

en_US

ja¡¢zh_CN

ja

ja

ResourceBundle ÀàµÄÐмһá×¢Òâµ½£¬JSTL ²Ù×÷ËùʹÓõIJéѯ²ßÂÔÓë ResourceBundle ËùʹÓõIJéѯ²ßÂÔÊDz»Í¬µÄ¡£ ResourceBundle ʹÓõIJßÂÔÖ»½ÓÊÜÒ»¸öÇëÇóµØÇøÉèÖã¬Õâ²»×ãÒÔ´¦ÀíÓÉ Accept-Language ±¨Í·ËùÌṩµÄµØÇøÉèÖÃÁÐ±í£¬²¢ÇÒËü»á»Ö¸´ Java ÔËÐл·¾³µÄĬÈϵØÇøÉèÖ㬴ËĬÈϵØÇøÉèÖÃÓë web Ó¦ÓóÌÐòºÍÆäÓû§²¢²»Ïà¹Ø£¬Ê¹ÓÃËü½«µ¼Ö²»¿ÉÒÆÖ²ÐÔ¡£

ÄÇô£¬ÎªÊ²Ã´²éѯ×ÊÔ´ÊøÊ±´æÔÚÁ½ÖÖ²»Í¬µÄ²Ù×÷ÄØ£¿ ËüÃǵÄÇø±ðÔÚÓÚËüÃÇʹÓõķ½·¨£º<fmt:bundle> ±ê¼ÇÌṩÁËÒ»¸öÓÃÓÚǶÌ×±ê¼ÇµÄ»·¾³£¬¶ø <fmt:setBundle> ²Ù×÷½«×îÖÕ±¾µØ»¯»·¾³´æ´¢ÔÚÒ»¸ö±äÁ¿ÖУ¬´Ë±äÁ¿¿ÉÒÔÔÚÏàÍ¬Ò³ÃæÖб»ºó¼Ì²Ù×÷·ÃÎÊ£¬²¢ÇÒ¿ÉÒÔ±»ÆäËûÒ³ÃæÖеIJÙ×÷Ëù·ÃÎÊ£¨ÕâÈ¡¾öÓڸñäÁ¿µÄ·¶Î§£©¡£

<fmt:message> ²Ù×÷ÊÇÒ»ÖÖÀûÓñ¾µØ»¯»·¾³µÄ JSTL ±ê¼Ç¡£ Ëü×î¼òµ¥µÄÐÎʽÊÇ£¬Ëü´ÓÒ»¸ö±¾µØ»¯»·¾³µÄ×ÊÔ´ÊøÖÐΪһ¸öÖ¸¶¨µÄ¼ü»ñȡһÌõÐÅÏ¢²¢½«¸ÃÐÅÏ¢²åÈëÉú³ÉµÄÒ³ÃæÖС£ ÏÂÃæÀý×ÓÏÔʾÁËËüµÄ²»Í¬Ó÷¨£º

<fmt:setBundle basename="Errors" var="errorBundle" />
<fmt:bundle basename="Messages">
  <%-- Localization context established by <fmt:bundle> tag --%>
  <fmt:message key="greeting" />
  <p>
  <%-- Localization context established by <fmt:setBundle> tag --%>
  <fmt:message key="emptyField" bundle="${errorBundle}" />
</fmt:bundle>

Æä´Î£¬ÎªÊ²Ã´ÓÐÒ»¸öÇëÇóµØÇøÉèÖÃÓë±¾µØ»¯»·¾³Ïà¹ØÁª£¿ Õâ¸öµØÇøÉèÖÃÊÇ JSTL ½«¸ñʽ»¯±ê¼ÇÏÞÖÆµ½Ó¦ÓóÌÐòËùÖ§³ÖµÄÓïÑÔ·¶Î§Äڵķ½·¨£¬ÕâÑùÕ¹ÏÖÔÚ¶ÁÕßÃæÇ°µÄÒ³ÃæÓïÑÔ½«Íêȫͳһ¡£ ǶÌ×ÓÚ <fmt:bundle> ±ê¼ÇÖеĸñʽ»¯²Ù×÷ʹÓøñê¼ÇµÄ±¾µØ»¯»·¾³À´È·¶¨ËüÃÇÓ¦¸ÃʹÓõĵØÇøÉèÖᣠÀýÈ磬ÈÃÎÒÃǹ۲ìÏÂÃæµÄÒ³ÃæÆ¬¶Ï£º

<jsp:useBean id="now" class="java.util.Date" />
<fmt:formatDate value="${now}" timeStyle="long" dateStyle="long" />
<p>
<fmt:bundle basename="Messages">
  <fmt:formatDate value="${now}" timeStyle="long" dateStyle="long" />
</fmt:bundle>

Èç¹û HTTP Accept-Language µØÇøÉèÖÃÊÇ fr ºÍ en£¬²¢ÇÒ»ù´¡µÄ Java ÔËÐл·¾³¶ÔÕâÁ½ÖÖÓïÑÔµÄÈÕÆÚ¸ñʽ¶¼Ö§³Ö£¨µ« web Ó¦ÓóÌÐòµÄ Messages ÊøÖ»´æÔÚÓÚ en£©£¬ÄÇôµÚÒ»¸öÈÕÆÚ²ÉÓ÷¨Îĸñʽ£¬¶øµÚ¶þ¸öÔò²ÉÓÃÓ¢Îĸñʽ¡£ Òò´Ë£¬Ò³ÃæÉè¼ÆÕß¿ÉÒÔ¾ö¶¨ÊÇʹÓÃͳһµÄÓïÑÔ»¹ÊÇͨ¹ýÑ¡ÔñÊʵ±µÄ±ê¼ÇǶÌ×À´ÀûÓÃËùÓÐÏÖÓеı¾µØ»¯ÐÅÏ¢¡£

×îºó£¬ÎªÊ²Ã´±¾µØ»¯»·¾³Ê¹ÓÃÇëÇóµØÇøÉèÖöø²»Ê¹ÓÃÓÉ×ÊÔ´ÊøÕÒµ½µÄµØÇøÉèÖã¿ ´ð°¸ÊÇ£¬ÕâÑù¿ÉÒÔ±ÜÃâ¶ªÊ§ÖØÒªµÄÐÅÏ¢£¬Ä³Ð©¸ñʽ±ê¼Ç¿ÉÄÜÐèÒªÕâЩÐÅÏ¢¡£ ºÜ¶àÓ¦ÓóÌÐò²»ÄÜÇø·ÖÏàͬÓïÑÔÖв»Í¬±äÁ¿Ö®¼äµÄÇø±ð£¬¶øÇÒÖ»Ìṩ£¨ÀýÈ磩ӢÎÄ×ÊÔ´Êø£¬ÆÚÍû×ÅÕâЩÎı¾ÔÚÓ¢¹ú¡¢°Ä´óÀûÑǺÍÐÂ¼ÓÆÂ¶¼Äܱ»Í¬ÑùÀí½â¡£ È»¶ø¶ÔÓÚÈÕÆÚ¸ñʽ£¬¹ú¼ÒÊǺܹؼüµÄ¡ª¡ª¶ÔÓÚÓ¢¹ú¶ÁÕßÀ´Ëµ£¬¡°2/6/02¡±±íʾ¡° 2002 Äê 6 Ô 2 ÈÕ¡±£¬µ«¶ÔÓÚϰ¹ßÃÀ¹ú¹æ·¶µÄ¶ÁÕßÀ´Ëµ£¬Ôò±íʾ¡°2002 Äê 2 Ô 6 ÈÕ¡±¡£ ËùÒÔ£¬ÔںܶàÇé¿öÏ£¬Èç¹ûʹÓÃÁËÇëÇóµØÇøÉèÖ㨶ø²»ÊÇ×ÊÔ´ÊøµØÇøÉèÖã©£¬Ôò¹ú¼ÒÐÅÏ¢½«»á±»±£Áô¡£

×Ö·û±àÂë

µ±Ç°£¬ÎÒÃÇʹÓÃÁ½ÖÖ½ØÈ»²»Í¬µÄÄ£¿é±íʾ´æ´¢ÔÚ¼ÆËã»úÖлòͨ¹ýÍøÂç´«ÊäµÄÎı¾£º¾ÉµÄ×Ö·û±àÂëģʽרÃÅÓÃÓÚ½ÏСµÄÓïÑÔ¼¯ºÏ¡¢¹ú¼ÒºÍ/»ò²Ù×÷ϵͳ£¨°üÀ¨Èç ISO 8859 ϵÁС¢ Windows ´úÂëÒ³ºÍ EUC ±àÂ룩£»¶øÐµĻùÓÚ Unicode ±àÂëµÄģʽÄܹ»£¨ÖÁÉÙÀíÂÛÉÏÄܹ»£©±íʾËùÓеÄÓïÑÔ²¢¿ÉÒÔÔÚÈκεط½Ê¹Óá£

¾ÉµÄÄ£¿é¾ßÓкܴóµÄÁÓÊÆ£º

  • ÿÖ־ɵÄ×Ö·û±àÂë·½·¨Í¨³£Ö»Ö§³ÖÒ»¸öСµÄÓïÑÔ¼¯ºÏ¡£ ÀýÈ磬Shift-JIS Ö§³ÖÈÕÎĺÍÓ¢ÎÄ£¬µ«²»Ö§³ÖÆäËûµÄÑÇÖÞ»òÅ·ÖÞÓïÑÔ¡£ ISO 8859-1 Ö§³ÖһЩÎ÷Å·ÓïÑÔµ«²»Ö§³Ö¶«Å·ÓïÑÔ¡£
  • ×Ö·ûת»»¿ÉÄÜ»á´øÀ´ÒâÁÏÖ®ÍâµÄÐÅÏ¢¶ªÊ§¡£ ¿ª·¢Õßͨ³£Ñ¡Ôñ ISO 8859-1 ×÷ΪµÂÓï¡¢·¨ÓïºÍÆäËüÎ÷Å·ÓïÑԵıàÂë·½·¨£¬È»ºó»áºÜ¾ªÑȵط¢ÏÖ¡°€¡±×Ö·û£¨µÂ¹ú¡¢·¨¹úºÍÐí¶àÆäËûÅ·ÖÞ¹ú¼ÒͨÓûõ±ÒµÄ±êÖ¾£©²»±»ÕâÖÖ±àÂëËùÖ§³Ö¡£ ΪÁË·ÀÖ¹ÕâÖÖÐÅÏ¢¶ªÊ§£¬Äú±ØÐëʹÓà Windows-1252¡¢ISO 8859-15 »òÆäËû±àÂë·½·¨£¬ÕâÈ¡¾öÓÚä¯ÀÀÆ÷µÄ»ù´¡²Ù×÷ϵͳ¡£

µ±Ç°°æ±¾µÄÖ÷ÒªÈí¼þϵͳËù°üº¬µÄ´´½¨¡¢·Ö·¢ºÍ½âÊÍ web ÄÚÈݶ¼Ö§³ÖеÄÄ£¿é£»ËüÃÇͨ³£½« Unicode ÓÃÓÚÄÚ²¿´¦Àí£¬»òÕßÖÁÉÙÖªµÀÔõôʹÓã¨ÓÃÓÚ web¡¢»ùÓÚ Unicode ±àÂëµÄ£©UTF-8¡£ »ùÓÚ Unicode µÄ±àÂëÓÐ×ÅÒÔÏÂÏÔÖøµÄÓÅÊÆ£ºËüÃÇÖ§³Ö¶àÓïÑÔÒ³Ãæ²¢ÇåÎúÇø·ÖµØÇøÉèÖ㨴Ó×Ö·û±àÂë´¦Àí£©ÎÊÌâ¡£ ͬÑù£¬ÒòΪ±àÂëת»»¶ø´øÀ´µÄÐÅÏ¢¶ªÊ§µÄ·çÏÕÒ²ºÜС£¬Í¬Ê±»ùÓÚ Unicode µÄ±àÂëÓëÏÖÔڵķþÎñÆ÷ºÍ¿Í»§¶Ëϵͳ±È½ÏÎǺϡ£

¾¡¹ÜÈç´Ë£¬ºÜ¶à web ¿ª·¢ÕßÈÔÈ»²»Ì«Ô¸ÒâʹÓà UTF-8¡£ÆäÖеÄÔ­Òò¿ÉÄܰüÀ¨¶Ô¾É°æ±¾µÄä¯ÀÀÆ÷Ö§³Ö²»³ä·Ö£¬»òÕßȱÉÙÖ§³ÖËüµÄ¹¤¾ß¡£

JavaServer Pages ¼¼Êõ¶ÔоÉÁ½ÖÖÄ£¿é¶¼Ö§³Ö¡£ ÏÖÔÚÎÒÃÇÀ´¿´¿´×Ö·û±àÂëÎÊÌâËùÉæ¼°µÄ¸÷ÖÖ²»Í¬ÁìÓò£¬²¢Á˽â JSP ¼¼ÊõºÍ JSTL ÈçºÎ´¦ÀíËüÃÇ¡£

´¦ÀíÔ´³ÌÐòÒ³±àÂë

JSP Ô´ÎļþµÄ±àÂëͨ³£ÓÉ¿ÉÓõı༭¹¤¾ß¾ö¶¨£¬ËùÒÔ¿ÉÄÜʹÓÃÌØ¶¨¹ú¼ÒºÍ²Ù×÷ϵͳµÄ±àÂë¡£ ×Ö·û±àÂëÓë JSP ÔËÐл·¾³£¨¡°ÈÝÆ÷¡±)Ö®¼äµÄͨѶ·½·¨ÓÐÐí¶àÖÖ£¬Ëæ×Åʱ¼äÍÆÒÆÆäÖеĻúÖÆºÍ¹æÔòÒѲ»¶Ï¸Ä½ø¡£ ͬʱ JSP Ô´ÎļþÏàÓ¦´æÔÚ×ÅÁ½ÖÖÓï·¨£º±ê×¼Óï·¨ºÍ»ùÓÚ XML µÄÐÂÓï·¨¡£

ÔÚ¼ì²â×Ö·û±àÂëʱ£¬JSP 2.0 ¹æ·¶½«ÔÚÕâÁ½ÖÖÓï·¨ÖнøÐбæ±ð¡£ ¶ÔÓÚ²ÉÓà XML Óï·¨µÄÎļþ£¬±àÂ뽫±»¼ì²âΪ²ÉÓà XML ¹æ·¶£»ÕâÒâζ×Å UTF-8 »ò UTF-16 ΪĬÈϵıàÂ룬¶øÆäËûµÄ±àÂë±ØÐëÔÚÎļþ¿ªÊ¼´¦µÄ XML ÉùÃ÷ÖÐÓèÒÔ˵Ã÷¡£ ¶ÔÓÚ²ÉÓñê×¼Óï·¨µÄÎļþ£¬ÈÝÆ÷½«¿¼ÂÇÁ½ÖÖÖ÷ÒªµÄÐÅÏ¢À´Ô´£ºÊ×ÏÈËüÃÇ·ÃÎÊÓ¦ÓóÌÐòµÄÅäÖÃÃèÊö·û£¬²éѯһ¸ö page-encoding ÔªËØ£¬¸ÃÔªËØÎ»ÓÚ jsp-property-group£¨Æä URL ¸ñʽÓëÎļþÏàÆ¥Å䣩£»È»ºóÔÚ´ËÒ³Öвéѯ pageEncoding ÊôÐÔ¡£ Èç¹ûÁ½Õß¶¼Ã»ÓУ¬ÈÝÆ÷Ò²»áѰÕÒ contentType ÊôÐÔÖÐµÄ charset £¨²ÎÔÄÏÂÒ»²¿·Ö¡°´¦Àí Web Ò³Ãæ±àÂ롱£©£¬»òʹÓà ISO 8859-1 ×÷Ϊ×îÖյı¸ÓÃÑ¡Ôñ¡£

ÒÔÏÂÊÇ»ùÓÚ JSP 2.0 µÄÓ¦ÓóÌÐòµÄһЩ¼òµ¥½¨Ò飺¶ÔÓÚ²ÉÓà XML Óï·¨µÄÎļþ£¬È·±£Ã»ÓÐʹÓà UTF-8 »ò UTF-16 ±àÂëµÄÎļþÄܹ»Õýȷʶ±ðËüÃǵÄ×Ö·û±àÂë¡£ ¶ÔÓÚ²ÉÓñê×¼Óï·¨µÄÎļþ£¬Èç¹ûÄú¶ÔËùÓÐÔ´ÎļþʹÓà UTF-8£¬ÔòÇëÔÚÅäÖÃÃèÊö·ûÖÐֻʹÓÃÒ»¸öÔªËØ page-encoding À´²ûÊöËü¡£ Èç¹ûÄúʹÓÃÌØ¶¨µØÇøÉèÖñàÂ룬Ôò¸ù¾Ý¸ÃµØÇøÉèÖÃÀ´×éÖ¯»òÃüÃûÄúµÄÎļþ£¬²¢Ê¹Óà page-encoding ÔªËØÀ´ÃèÊöËüÃǵĹØÏµ¡£ ÀýÈ磬Èç¹ûÈ«²¿µÄº«ÎÄÎļþÒÔ EUC-KR ±àÂë²¢±£´æÔÚ /ko/KR web µÄÓ¦ÓóÌÐòµÄ×ÓĿ¼ÖУ¬ÇëʹÓÃÒÔÏÂÓï¾ä£º

<jsp-property-group>
  <url-pattern>/ko/KR/*</url-pattern>
  <page-encoding>EUC-KR</page-encoding>
</jsp-property-group>

Èç¹ûÓ¦ÓóÌÐòÖеÄÔ´Îļþ²»ÄÜÒÔÕâÖÖ·½Ê½×éÖ¯£¬ÔòΪÿ¸öÔ´ÎļþÌí¼Ó pageEncoding ÊôÐÔ¡£ ²»¹ýÇëÇмǣ¬´ËÊôÐÔ±ØÐëÄܹ»ÔÚÎļþµÄ¿ªÊ¼´¦ÕÒµ½²¢ÇÒÖ»ÄÜÓÃÓÚ±êʶ ASCII À©Õ¹ÂëµÄ×Ö·û±àÂë¡£ ºóÒ»¸öÏÞÖÆ¿¼Âǵ½ÁË UTF-8 ºÍÐí¶à¾ÉµÄ×Ö·û±àÂ룬µ«Ã»¿¼ÂÇ UTF-16 »ò»ùÓÚ EBCDIC µÄ±àÂë¡£ ²»½¨Òé¸ù¾Ý contentType ÊôÐÔÖÐµÄ charset ÖµÀ´±êʶԴ³ÌÐòÒ³±àÂ룻Õâ¸öÖµÓ¦Ö»ÓÃÓÚ±êʶ web Ò³Ãæ±àÂ루²Î¼ûÏÂÒ»²¿·Ö£©¡£

¹ØÓÚÔ´Îļþ×Ö·û±àÂ룬JSP 1.2 ¹æ·¶Ã»ÓÐÇå³þµØÇø·ÖʹÓñê×¼Óï·¨µÄÎļþºÍʹÓà XML Óï·¨µÄÎļþ¡£ ËüҲûÓÐÌṩʶ±ðÅäÖÃÃèÊö·ûÖеÄ×Ö·û±àÂëµÄ·½·¨¡£ Ϊȷ±£ÕýÈ·¼ì²â×Ö·û±àÂ룬Éè¼ÆÓÃÓÚ JSP 1.2 ÈÝÆ÷µÄÓ¦ÓóÌÐòÓ¦×ÜÊÇʶ±ðÿ¸öʹÓà pageEncoding ÊôÐÔµÄÔ´ÎļþÖеÄ×Ö·û±àÂë¡£

JSTL ¶¨ÒåÁËÒ»¸ö<c:import> ²Ù×÷£¬¸Ã²Ù×÷ÔÊÐí°üº¬ÓÉ URL Ö¸¶¨µ½ JSP Éú³ÉµÄÒ³ÃæµÄÍⲿÊý¾Ý¡£ ¸Ã²Ù×÷ÔÊÐí×Ö·û±àÂë¹æ·¶£¬Èç¹ûÍⲿÊý¾ÝûÓÐÖ¸¶¨Ëü±¾ÉíµÄ±àÂëʱ»áʹÓô˹淶¡£

´¦Àí Web Ò³Ãæ±àÂë

web Ó¦ÓóÌÐò±ØÐëÑ¡ÔñÉú³ÉµÄ web Ò³ÖÐʹÓõÄ×Ö·û±àÂ루¸Ã±àÂë±»³ÆÎª¡°·´Ó¦×Ö·û±àÂ롱£©£¬Ëü»ùÓÚÄ¿±êä¯ÀÀÆ÷µÄÐÔÄÜ¡¢Ò³ÃæÄÚÈݵıàдϵͳºÍÓïÑÔÒÔ¼°¿ÉÄܵÄä¯ÀÀÆ÷Ö÷»úµÄ²Ù×÷ϵͳ¡£ ¸ù¾Ý HTTP ¹æ·¶£¬×Ö·û±àÂëÔÚ Content-Type ʵÌ屨ͷµÄ charset ²ÎÊýÖб»Ö¸¶¨¡£

Èç¹ûËùÓÐÄ¿±êä¯ÀÀÆ÷¶¼Ö§³Ö UTF-8£¬Ò»°ãÀ´Ëµ×îºÃʹÓÃÕâÖÖ±àÂ룬ÕâÑù¾Í¿ÉÒÔÖ§³Ö¶àÓïÑÔÎĵµ²¢±ÜÃâ×Ö·ûת»»´øÀ´µÄÐÅÏ¢¶ªÊ§¡£

Èç¹û²»ÄÜʹÓà UTF-8 £¬±ØÐëСÐĽ÷É÷µØÊ¹ÓÃÓ¦ÓóÌÐò½«×Ö·û±àÂëÓëʹÓõÄÓïÑÔÏàÆ¥Å䣬°üÀ¨Ò»Ð©ÌØÊâ×Ö·û¡£ Ϊ·ÀÖ¹³öÏÖ´íÎ󣬿ÉÄÜÐèÒªÔÚÕû¸öÒ³ÃæÀïʹÓÃͬһÖÖÓïÑÔ£¬Èç±¾ÎÄ¿ªÊ¼²¿·Ö¡°µØÇøÈ·¶¨ºÍ±¾µØ»¯¡±ÖÐËùÊö¡£ ͬÑù£¬Ò²ÓбØÒª±ÜÃâʹÓá°€¡±×Ö·û¡£

Web Ó¦ÓóÌÐò¿ÉÒÔÖ±½ÓÖ¸¶¨Ò»¸öÒ³ÃæµÄ×Ö·û±àÂ룬Ҳ¿ÉÒÔÈà JSP ¼¼Êõ¸ù¾ÝµØÇøÉèÖÃÐÅÏ¢¼ä½Ó¾ö¶¨¡£

  • ͨ¹ýÒ³ÃæµÄ contentType ÊôÐÔµÄÏÔʽ¹æ·¶×îΪ¼ò±ã£¬¸ÃÊôÐÔ¿ÉÈÃÓ¦ÓóÌÐòÁ¬Í¬Éú³ÉÒ³ÃæµÄÄÚÈÝÀàÐÍÒ»ÆðÀ´Ö¸¶¨×Ö·û±àÂë¡£ Èç¹ûÓ¦ÓóÌÐòÔÚ´¦ÀíÇëÇóʱÐèÒªÉèÖÃ×Ö·û±àÂ룬ÔòËüÐèҪʹÓÃÒ»¸ö×Ô¶¨Òå²Ù×÷»òһЩ Java ´úÂëÀ´µ÷Óà javax.servlet.ServletResponse.setContentType ·½·¨»òеģ¨ÔÚ Servlet 2.4 ÖУ©javax.servlet.ServletResponse.setCharacterEncoding ·½·¨¡£
  • ¼ä½ÓµØ£¬Ã¿µ±×Ö·û±àÂë´´½¨Ò»¸ö±¾µØ»¯»·¾³Ê±£¬ËüÃÇÒ²ÊÇÓÉ JSTL ¸ñʽ»¯²Ù×÷£¨°üÀ¨ <fmt:message>£©ÒÔ¼° <fmt:bundle>¡¢<fmt:setBundle> ºÍ <fmt:setLocale> ²Ù×÷ÎÞÌõ¼þµØÀ´¾ö¶¨¡£ ͨ¹ý ServletResponse.setLocale ·½·¨£¬ËüÃǽ«±¾µØ»¯»·¾³µÄµØÇøÉèÖûòÖ¸¶¨µÄµØÇøÉèÖÃÓ³Éäµ½Ò»¸ö×Ö·û±àÂë²¢¸ù¾ÝÒ³ÃæµÄÄÚÈÝÀàÐÍ¶ÔÆä½øÐÐÉèÖᣠServlet 2.4 ¹æ·¶Í¨¹ýÅäÖÃÃèÊö·ûÖÐµÄ locale-encoding-mapping-list ÔªËØÎªÓ¦ÓóÌÐòÌṩÁËÒ»¸ö¿ØÖÆÓ³ÉäµÄ·½·¨¡£ Èç¹ûÓ¦ÓóÌÐòûÓÐÌṩ´ËÔªËØ£¬»òÕßµ±ÄúʹÓûùÓÚ¾ÉµÄ Servlet ¹æ·¶µÄÈÝÆ÷ʱ£¬ÄÇô´ÓµØÇøÉèÖõ½×Ö·û±àÂëµÄÓ³ÉäÈ¡¾öÓÚ¸ÃÈÝÆ÷£»µäÐ͵ÄʵÏÖÒÀÀµÓھɵÄ×Ö·û±àÂë¡£

¼ä½Ó¾ö¶¨×Ö·û±àÂëÊÇ¿ÉÐеģ¬Ö»Òª¾ÉµÄ×Ö·û±àÂë¿ÉÒÔ±»½ÓÊÜ£¬²¢ÇÒÕû¸öÒ³ÃæÊ¹ÓÃÏàͬµÄÓïÑÔ¶øÇÒ±ÜÃâ³öÏÖ³£ÓÃ×Ö·û±àÂëËù²»Ö§³ÖµÄÌØÊâ×Ö·û¡£ È»¶ø£¬ÈôÒªÀûÓà UTF-8 ÔòÒªÇóʹÓÃÏÔʽ¹æ·¶¡£ ÒòΪ Servlet 2.4 ¹æ·¶Ê¹ÏÔʽ¹æ·¶ÓÅÏÈÓÚÒþʽ¹æ·¶£¬ËùÒÔ½«×Ö·û±àÂëÉèÖÃΪ contentType ÊôÐÔµÄÒ»²¿·ÖÒÑ×ã¹»¡ª¡ªËæºóʹÓà JSTL ¸ñʽ»¯²Ù×÷²»»áÓ°Ïì×Ö·ûµÄ±àÂë¡£ ²»¹ý£¬ÔÚÔçÆÚ°æ±¾µÄ Servlet ¹æ·¶ÖУ¬²¢²»±£Ö¤µØÇøÉèÖÃÐÅÏ¢ÖеÄÏÔʽ¹æ·¶ÓÅÏÈÓÚÒþʽ¾ö¶¨¡£ Èç¹ûÐèÒªÓë»ùÓھɹ淶µÄÈÝÆ÷¼æÈÝ£¬Äú±ØÐëͨ¹ýÔÚÏÔʽ×Ö·û±àÂë¹æ·¶ºÍÊ×´ÎʹÓÃ×Ô¶¨Òå²Ù×÷Ö®¼äµ÷Óà ServletResponse.flushBuffer À´¶³½á×Ö·û±àÂ룬ÕâЩ×Ô¶¨Òå²Ù×÷¿ÉÄܼä½Ó¾ö¶¨×Ö·û±àÂë¡£

´¦ÀíÇëÇó²ÎÊý±àÂë

JSP ¼¼Êõ²»½öÄܹ»Éú³É web Ò³Ãæ£¬¶øÇÒ»¹¿ÉÒÔ½ÓÊպͽâÊÍÓë HTTP ÇëÇóÒ»ÆðÊÕµ½µÄ²ÎÊý¡ª¡ªÍ¨³£ÊÇÀ´×ÔijÖÖ±í¸ñµÄÊäÈ룬ÕâÖÖ±í¸ñÊôÓÚÇ°ÃæÉú³ÉµÄ web Ò³ÃæµÄÒ»²¿·Ö¡£ ÓÃÓÚÕâЩ²ÎÊýµÄ×Ö·û±àÂë²¢·ÇÔÚÈκεط½¶¼±»Ö¸¶¨£¬µ«Êµ¼Ê±ê×¼ÊÇä¯ÀÀÆ÷ʹÓõıàÂëÒªÓë°üº¬ÕâЩ±í¸ñµÄÍøÒ³Ê¹ÓõıàÂëÏàͬ¡£

ÕâÒâζ×Å web Ó¦ÓóÌÐòÐèÒª¸ú×ÙÏÈǰÉú³ÉµÄÍøÒ³µÄ±àÂë¡£ Ò»¸ö³£ÓõĻúÖÆÊǰѱàÂëµÄÃû³Æ´æ´¢µ½±í¸ñ±¾ÉíµÄÒ»¸öÒþ²ØÓòÖУ¬ÔÚÏÂÒ»¸öÇëÇóʱ½âѹËõΪµÚÒ»¸ö²ÎÊý£¬È»ºóÓÃËüÀ´½âÂë³öÆäËûµÄ²ÎÊý¡£ È»¶ø£¬JSP Ò³Ãæ»¹¿ÉÒÔʹÓûỰ¹ÜÀíÀ´¸ú×ÙÇëÇóÖ®¼äµÄÐÅÏ¢¡£

Ó¦ÓóÌÐò¿ÉÒÔʹÓà JSTL ×Ô¶¨Òå²Ù×÷ <fmt:requestEncoding> À´Ö¸¶¨Òª±àÂëµÄ²ÎÊýµÄ±àÂë·½·¨¡£ Èç¹ûÓ¦ÓóÌÐò×ÜÊÇ·¢ËÍ UTF-8 ±àÂëµÄÒ³Ãæ£¬ÄÇô¿ÉÒÔ¼òµ¥Ö¸¶¨ÕâÖÖ±àÂëΪÇëÇó±àÂë¡£ ·ñÔò£¬Èç¹ûËü½«Ö±½ÓÖ¸¶¨Éú³ÉÒ³ÃæµÄ±àÂ룬ËüÓ¦¸Ã½«¸Ã±àÂë×÷Ϊ»á»°ÐÅÏ¢µÄÒ»²¿·Ö½øÐиú×Ù²¢Ö±½Ó½«Æä´«µÝ¸ø <fmt:requestEncoding> ²Ù×÷¡£ Èç¹ûËüÒÀÀµÓÚ×Ö·û±àÂëµÄ¼ä½Ó¾ö¶¨£¬ÔòËü»á¼òµ¥µØÊ¹Óà <fmt:requestEncoding> ²Ù×÷¶øÎÞÐèÖ¸¶¨Ò»ÖÖ×Ö·û±àÂ룻¼ä½Ó¾ö¶¨Éú³ÉÒ³ÃæµÄ±àÂëÕâÒ»²Ù×÷»¹»áÔڻỰÖд¢´æÐÅÏ¢£¬<fmt:requestEncoding> ¿ÉÒÔ¼ìË÷ºÍʹÓÃÕâЩÐÅÏ¢¡£

¸ñʽ»¯ºÍ½âÎö

ÒÔ±¾µØ»¯µÄ¸ñʽ±íʾÊý¾Ý£¨ÈçÊý×ÖºÍÈÕÆÚ£©ÊÇÈκÎÀàÐ͵ØÓ¦ÓóÌÐò¶¼ÒªÍê³ÉµÄ³£¼ûÈÎÎñ£¬¾ÍÈçͬÓû§ÌṩµÄÊäÈë½âÊÍ¡£ ²»Í¬ÓïÑÔºÍÎÄ»¯ËùʹÓõĸñÊ½Çø±ðºÜ´ó£¬ËùÒÔÈç¹û¿ª·¢Õß²»ÒÀ¿¿ÏÖÓеĿâµÄ»°£¬ÄÇôÕâ¸ö¹¤×÷¾Í²»»áÊÇÒ»Ïî¼òµ¥µÄÈÎÎñ¡£

ÐÒÔ˵ÄÊÇ£¬È·Êµ´æÔÚÕâÑùµÄ¿â¡£ Java 2 Standard Edition (J2SE) ƽ̨ÌṩÁËÔÚ java.text Èí¼þ°üÖÐÓÃÓÚ¸ñʽ»¯ºÍ½âÎö³£ÓÃÊý¾ÝÀàÐ͵ÄÀà¿â£¬²¢ÇÒ Sun Òѽ«ÕâЩÀà¿â±¾µØ»¯Îª 100 ¶àÖÖµØÇøÉèÖá£

JavaServer Pages ±ê×¼±ê¼Ç¿âÌṩÁË×Ô¶¨Òå²Ù×÷£¬¿É½«ÕâЩ¹¦ÄÜÖ±½ÓÓ¦Óõ½ JSP Ò³ÃæÖС£

ÓÃÓÚ¸ñʽ»¯ºÍ½âÎö²Ù×÷µÄµØÇøÈ·¶¨

Äú¿ÉÒÔÔÚÔ¤¶¨ÒåµÄ±¾µØ»¯»·¾³ÖжÔÊý×ÖºÍÈÕÆÚʹÓøñʽ»¯ºÍ½âÎöµÄ²Ù×÷£¨ÀýÈ磬Èç¹û±ê¼ÇǶÌ×ÓÚÒ»¸ö <fmt:bundle> ±ê¼ÇÖУ©£¬»òÕßÔÚÕâÖÖ»·¾³ÒÔÍâ½øÐвÙ×÷¡£ Èç¹ûÄúÔÚÔ¤¶¨ÒåµÄ±¾µØ»¯»·¾³ÖÐʹÓòÙ×÷£¬ÔòËüÃǽ«Ê¹Óô˱¾µØ»¯»·¾³µÄµØÇøÉèÖᣠ·ñÔò£¬ËüÃǽ«¾ö¶¨ <fmt:bundle> ºÍ <fmt:setBundle> ²Ù×÷£¨ÈçǰÎÄËùÊö£©µÄ£¬ÓÃÓÚÐ޸ĵÄ×ÊÔ´Êø²éѯ²ßÂÔËùʹÓõĵØÇøÉèÖᣠÖ÷ÒªµÄÇø±ðÔÚÓÚ£ºÓë²éÕÒ×ÊÔ´Êø²»Í¬£¬Ë㷨ͨ¹ýʹÓà java.text.NumberFormat.getAvailableLocales ·½·¨£¨ÓÃÓÚÊý×Ö¸ñʽ»¯ºÍ½âÎö²Ù×÷£©»òÕß java.text.DateFormat.getAvailableLocales ·½·¨£¨ÓÃÓÚÈÕÆÚºÍʱ¼ä¸ñʽ»¯ºÍ·Ö½â²Ù×÷£©À´¾ö¶¨ÊÜÖ§³ÖµÄµØÇøÉèÖá£

Êý×Ö¸ñʽ»¯ºÍ½âÎö

JSTL ÓÃÓÚÊý×Ö¸ñʽ»¯ºÍ½âÎöµÄ×Ô¶¨Òå²Ù×÷ <fmt:formatNumber> ºÍ <fmt:parseNumber> »ùÓÚ J2SE Àà java.text.NumberFormat£¬ÓÃÓÚ´¦Àí¼òµ¥µÄÊý×ÖÒÔ¼°°Ù·Ö±ÈºÍ»õ±ÒÖµ¡£

ÌØ±ðÖµµÃÒ»ÌáµÄÊÇËüÃǶԻõ±Ò¸ñʽ»¯µÄÖ§³Ö¡£ ´«Í³ÉÏ£¬Ðí¶à¸ñʽ»¯¿â¼ÙÉè»õ±Ò·ûºÅ¿ÉÒÔ´ÓµØÇøÉèÖÃÖеóö¡ª¡ªÀýÈ磬Èç¹ûµØÇøÉèÖÃÊÇÖйú£¬ÄÇô»õ±Ò·ûºÅ¾ÍÊÇÈËÃñ±Ò£¨RMB£©¡£ ÔÚÒ»¸ö¿ç¾³½»Ò׵Ļ·¾³ÖУ¬ÕⲢûÓжà´óµÄÒâÒå¡£ Èç¹ûij¸öÓ¢¹ú¹«Ë¾ÒÔÓ¢°÷À´¼ÆËã¼Û¸ñ£¬¶ø web Ó¦ÓóÌÐò½«¼Û¸ñÏÔʾΪÈËÃñ±Ò£¨RMB£©µÄÐÎʽ£¬¾Í»á³öÏÖÁ½¸öÎÊÌ⣺µÚÒ»£¬ÈËÃñ±ÒµÄ»ãÂʱÈÓ¢°÷µÍ£»Æä´Î£¬ÈËÃñ±Ò»»»ØÓ¢°÷»á±È½ÏÀ§ÄÑ¡£ ÓÉÓÚ»õ±ÒµÄÑ¡ÔñÊôÓÚÉÌÒµÉϵľö¶¨£¬ËùÒÔ»õ±Ò±ØÐë×÷ΪֵµÄÒ»²¿·Ö¶ø²»ÊǸñʽµÄÒ»²¿·Ö¡£

Òò´Ë£¬<fmt:formatNumber> ²Ù×÷¿ÉÒÔÈÃÓ¦ÓóÌÐòÖ¸¶¨Ò»¸ö ISO 4217 »õ±Ò´úÂë»ò»õ±Ò·ûºÅ£¬Ëü½«¸²¸Ç±¾µØ»¯Êý×Ö¸ñʽʹÓõÄĬÈÏ»õ±Ò¡£ ¼ÙÉèÓ¦ÓóÌÐòʹÓÃÒ»¸ö´øÓÐÖµºÍ»õ±ÒÊôÐԵļ۸ñ bean£¬ÏÂÃæµÄÒ³ÃæÓï¾äƬ¶Ï¿ÉÒÔ¶Ô¼Û¸ñ½øÐиñʽ»¯£º

<fmt:formatNumber type="currency" value="${price.value}"
  currencyCode="${price.currency}" />

Èç¹û JSP Ò³ÃæÖ¸¶¨ÁËÒ»¸ö»õ±Ò´úÂ룬Ôòµ×²ãµÄ NumberFormat ¶ÔÏó»á³¢ÊÔ¶ÔÖ¸¶¨µÄ»õ±ÒʹÓÃÒ»¸ö»õ±Ò·ûºÅ£¬¸ÃÖ¸¶¨µÄ»õ±ÒÒѱ¾µØ»¯ÎªËù´¦±¾µØ»¯»·¾³µÄµØÇøÉèÖᣠÀýÈ磬Èç¹ûΪÃÀÔªÖ¸¶¨»õ±Ò´úÂë USD£¬ÔòËü¿ÉÄÜ»áʹÓ÷ûºÅ¡°$¡±£¨Èç¹ûµØÇøÉèÖÃÊÇen_US£©£¬ÔÚÆäËû¿É½ÓÊܸûõ±Ò·ûºÅµÄµØÇøÉèÖÃÖн«Ê¹Óà US$£¬»òÕßÈç¹û±¾µØ»¯·ûºÅδ֪£¬ÔòʹÓñ¸Óûõ±Ò´úÂë USD¡£

ÈÕÆÚºÍʱ¼äµÄ¸ñʽ»¯ºÍ½âÎö

ÓÃÓÚÈÕÆÚºÍʱ¼äµÄ¸ñʽ»¯ºÍ½âÎöµÄ JSTL ×Ô¶¨Òå²Ù×÷ <fmt:formatDate> ºÍ <fmt:parseDate> »ùÓÚ J2SE Àà java.text.DateFormat ²¢ÓÃÓÚ´¦Àí²»Í¬µÄÈÕÆÚºÍʱ¼ä±íʾ·½·¨¡£

ÁîÈ˸ÐÐËȤµÄÒ»µãÊÇÏÔʾµÄÈÕÆÚºÍʱ¼ä²»½ö½öÈ¡¾öÓÚÒ»ÖÖÖ¸¶¨µØÇøÉèÖõĸñʽ£¬»¹È¡¾öÓÚÊ±ÇøÐÅÏ¢¡£ Óû§Í¨³£¶Ô·þÎñÆ÷Ê±Çø²»¸ÐÐËȤ£¬µ«ÁíÒ»·½Ã棬ҪÕÒ³öÓû§ËùÔڵصÄÊ±ÇøÈ´²¢²»¼òµ¥¡£Ó¦ÓóÌÐò¿ÉÒÔͨ¹ýʹÓÃһЩ¿Í»§¶ËµÄ javascript ´úÂëÀ´ÕÒ³öÓû§µÄµ±Ç°Ê±ÇøÓë¸ñÁÖÄáÖαê׼ʱ¼äµÄÆ«²î£¬»òÈÃÓû§Ö¸¶¨µ±Ç°Ê±Çø²¢½«Æä×÷ΪÓû§ÐÅÏ¢µÄÒ»²¿·Ö¡£ JSTL ²Ù×÷²¢Ã»Óнâ¾öÕâ¸öÎÊÌ⣬µ«ËüÃÇÌṩÁËÁ½¸ö×Ô¶¨Òå²Ù×÷£¬¿ÉÒÔÓÃÀ´¸æÖªÓйØÊ±ÇøµÄÈÕÆÚºÍʱ¼äµÄ¸ñʽ»¯ºÍ½âÎö£º<fmt:timeZone> ºÍ <fmt:setTimeZone>¡£ Óë <fmt:bundle> ºÍ <fmt:setBundle> Ò»Ñù£¬<fmt:timeZone> ±ê¼Ç¿ÉΪǶÌ×±ê¼Ç¶¨ÒåÊ±Çø£¬¶ø <fmt:setTimeZone> ½«Ê±Çø´¢´æÔÚÒ»¸ö±äÁ¿ÖÐÒÔ¹©ºó¼Ì²Ù×÷ʹÓá£

ÐÅÏ¢¸ñʽ»¯

<fmt:message> ²Ù×÷£¨Ç°ÃæÒÑÌá¼°£©²»µ«ÄÜ´ÓÒ»¸ö×ÊÔ´ÊøÖлñȡһ¸ö×Ö·û´®²¢½«Æä²åÈëÖÁÉú³ÉµÄÒ³ÃæÖУ¬¶øÇÒËü»¹¿ÉÒÔÖ´ÐвÎÊýÌæ»»²¢¸ù¾ÝÐèÒª¸ñʽ»¯²ÎÊý¡£ Ëü»ùÓÚ java.text.MessageFormat À࣬Òò´Ë¸Ã²Ù×÷»ñÈ¡µÄ×Ö·û´®Êµ¼ÊÉÏÊÇÒ»¸ö MessageFormat ģʽ×Ö·û´®¡£ <fmt:param> ²Ù×÷ÌṩÁ˱ØÒªµÄ×Ô±äÁ¿¡£

ÀýÈ磬Èç¹û JSP Ò³Ãæ°üº¬ÁËÒÔÏÂÓï¾ä£º

<jsp:useBean id="now" class="java.util.Date" />
<fmt:bundle basename="Messages">
  <fmt:message key="greeting">
    <fmt:param value="${now}" />
  </fmt:message>
</fmt:bundle>

²¢ÇÒÕÒµ½µÄ×ÊÔ´ÊøÊǵÂÓ¶øÇÒ Îª greeting ¼üÌṩÁË¡°Willkommen! Heute ist der {0,date,long}.¡±Öµ£¬ÄÇôÉú³ÉÈÕÆÚΪ£¨¼ÙÉ裩2002 Äê 6 Ô 21 ÈÕµÄÒ³ÃæÄÚÈݽ«»áÊÇ¡°Willkommen! Heute ist der 21. Juni 2002.¡±

½áÂÛ

Èç±¾ÎÄËùÊö£¬JavaServer Pages ¼¼Êõ£¨ÌرðÊÇ JavaServer Pages ±ê×¼±ê¼Ç¿â£©ÎªÄúÌṩÁËÒ»¸ö¿ª·¢¶àÓïÑÔÓ¦ÓóÌÐòµÄ¼áʵ»ù´¡¡£ ÄúÐèÒª×Ðϸ¿¼ÂÇÒÔϼ¸¸öÉè¼ÆÑ¡Ôñ£ºÈçºÎÈ·¶¨Óû§µÄÓïÑԺ͵ØÇøÉèÖÃÊ×Ñ¡ÏÈçºÎ¹¹ÔìÄúÓÃÓÚ±¾µØ»¯µÄ JSP Ò³Ãæ£¬ÊÇ·ñ²ÉÓõ¥Ò»ÓïÑÔµÄÒ³Ãæ»ò³ä·ÖÀûÓÃÏÖÓеĵØÇøÉèÖÃÖ§³Ö£¬ÒÔ¼°Ê¹ÓÃÄÄÒ»ÖÖ×Ö·û±àÂëÄ£¿é¡£ JSP ¼¼ÊõʹÄúÄܹ»Ñ¡ÔñÆäÖÐÈÎÒâÒ»ÖÖ£¬ÕâÑùÄú¾Í¿ÉÒÔ½«Ò³ÃæÒÔ×î¼ÑµÄ·½Ê½Õ¹Ê¾¸øÈ«ÊÀ½çµÄ¶ÁÕߣ¬¶øÇÒ×îÖØÒªµÄÊÇ£¬ÒÔËûÃÇ×Ô¼ºµÄÓïÑÔÀ´Õ¹Ê¾¡£

¾²Ì¬Ò³Ã棺http://www.qqread.com/j2ee/u220795.html ¸ü¶àÎÄÕ ¸ü¶àÄÚÈÝÇë¿´JspÍêÈ«¹¥ÂÔרÌâ¡¢JSP½Ì³ÌרÀ¸¡¢Wlan×éÍø----¼ÒͥרÌâרÌ⣬»ò½øÈëÌÖÂÛ×éÌÖÂÛ¡£
¡¾ÊղشËÎÄ¡¿¡¾´ó ÖРС¡¿¡¾´òÓ¡¡¿¡¾¹Ø±Õ¡¿
Ïà¹ØÍ¼ÎÄÔĶÁ
ƵµÀͼÎÄÍÆ¼ö
½¡ ¿µ ×É Ñ¯
ʱ ÉÐ ×É Ñ¯
ÇÉÇɶÁÊé×ÚÖ¼
Ïà¹Ø×¨Ìâ
×îÐÂÂÛ̳ÎÄÕÂ
Õ¾ÄÚ¸÷ƵµÀ×îиüÐÂÎĵµ
Õ¾ÄÚ×îÐÂÖÆ×÷רÌâ
ÈÈÃŹؼü×Öµ¼¶Á
Photoshop½Ì ³Ì£ºÕÕÆ¬´¦Àí ÕÕÆ¬ÖÆ×÷ PS¿ì½Ý¼ü ¿Ùͼ
¼Æ Ëã »ú ¹Ê ÕÏ£ºXPϵͳÐÞ¸´
ÒÕ Êõ Óë Éè ¼Æ£ºÉè¼Æ Á÷ýÌå Éè¼ÆÐÀÉÍ ±ß¿ò
¼Æ Ëã »ú °² È«£ºARP
Õ¾ÄÚÆµµÀÎÄÕ¾«Ñ¡
ÇÉÇɵçÄÔÆµµÀ±à¼­ÐÅÏä  ¸æËßÎÒÃÇÄúÏë¿´µÄרÌâ»òÎÄÕÂ