JSP Tips

GHLab
2006-08-14 09:36:23.0
UTF-8 °³¹ß¿¡ °üÇÑ Á¤¸®ÀÔ´Ï´Ù.

1. ¸ðµç ¹®¼­´Â UTF-8 ÀÎÄÚµùÀ¸·Î ÀúÀåµÇ¾î¾ß ÇÕ´Ï´Ù.

¿¡µðÆ® Ç÷¯½ºÀÇ °æ¿ì µµ±¸ -> ±âº»¼³Á¤ -> ÆÄÀÏ ºÎºÐ¿¡¼­ »õ ÆÄÀÏ Çü½ÄÀ»

UTF-8 ·Î ÇØ³õÀ½À¸·Î½á »õÆÄÀÏ ÀÛ¼º½Ã UTF-8À» ±âº»À¸·Î ÀÛ¼ºÇÒ¼ö ÀÖ°í,

ÀÌ¹Ì ´Ù¸¥ ÀÎÄÚµù ŸÀÔ¿¡¼­ ÀÛ¼ºµÈ ¹®¼­ÀÎ °æ¿ì ³»¿ëÀ» ¸ðÁ¶¸® Ctrl+C·Î º¹»çÈÄ

¹®¼­ -> ÀÎÄÚµù º¯°æ ·Îµå¿¡¼­ UTF-8·Î º¯°æÈÄ ´Ù½Ã ºÙ¿©³Ö±â ÇÏ¸é µË´Ï´Ù.

 

ÀÌŬ¸³½ºÀÇ °æ¿ì Package Explorer ¿¡¼­ ÇÁ·ÎÁ§Æ®¿¡¼­ ¿ìÃø ¹öưÀ» ´©¸¥ ÈÄ

Properties->Info->Text file encoding->Other À» UTF-8 ·Î Àâ¾ÆÁÖ¸é µË´Ï´Ù.

( ±âÁ¸ ´Ù¸¥ ÀÎÄÚµù ŸÀÔ¿¡¼­ ÀÛ¼ºµÈ ¹®¼­ ³»ºÎ ÇѱÛÀº ¸ðÁ¶¸® ±úÁö°Ô µÊ )

 

* ascii ·Î ÀÛ¼ºµÈ ÀÚ¹Ù½ºÅ©¸³Æ® ÆÄÀÏÀ» utf ¹®¼­¿¡¼­ ºÒ·¯¿Í ¼öÇà½Ãų °æ¿ì

ÀÚ¹Ù½ºÅ©¸³Æ® ¿¡·¯ ³ª´Â ¹®Á¦µµ ÀÖ´õ±º¿ä.(ÇÑ±Û ÁÖ¼®ÀÌ ¿µÇâÀ» ÁáÀ»¼öµµ...)

 

2. jsp ÆÄÀÏ »ó´Ü¿¡´Â ´ÙÀ½°ú °°Àº ¹æ½ÄÀ¸·Î UTF-8 ¼³Á¤ÇÕ´Ï´Ù.

<%@ page contentType = "text/html;charset=utf-8" %>

 

3. ¼­ºí¸´Àº ´ÙÀ½°ú °°Àº ¹æ½ÄÀ¸·Î UTF-8À» ¼³Á¤ÇÕ´Ï´Ù.

request.setCharacterEncoding("utf-8")

 

4. ÀÚ¹Ù½ºÅ©¸³Æ®¿¡¼­ encodeURIComponent ó¸® ¹× ÅèĹ server.xml ÀÇ ¼³Á¤ º¯°æ

À§ 1,2,3¹øÀÇ ¹æ½ÄÀ¸·Î Çϸé post ¹æ½ÄÀÇ µ¥ÀÌÅÍ´Â Àß ¹ÞÁö¸¸

get ¹æ½ÄÀÇ µ¥ÀÌÅÍ´Â ÇѱÛÀÌ ±úÁý´Ï´Ù.

ÀÌ¿Í °°Àº °æ¿ì ÀÚ¹Ù½ºÅ©¸³Æ®ÀÇ encodeURIComponent ÇÔ¼ö¿Í

server.xml À» ÀÌ¿ëÇÏ¿© ó¸®ÇÏ¸é µË´Ï´Ù.

 

4.1 server.xml

ÅèĹ Æú´õÀÇ conf Æú´õ¿¡´Â server.xml ÆÄÀÏÀÌ Á¸ÀçÇÕ´Ï´Ù.

¿¡µðÅÍ·Î ¿­¾îº¸¸é

 

¿¹)

    <Connector port="8080" maxHttpHeaderSize="8192"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" redirectPort="8443" acceptCount="100"
               connectionTimeout="20000" disableUploadTimeout="true" />

 

°ªÀÌ ¾à°£ Ʋ¸±¼ö ÀÖÁö¸¸ ÃÊ±â ¼ÂÆÃ °ªÀÌ º¸Åë Àú·¯Çϰí,

Connector Àº Ãʱ⿡ 2°³°¡ Àִµ¥ 8080 Æ÷Æ® ºÎºÐÀ» ¼öÁ¤ÇÏ¸é µË´Ï´Ù.

¼öÁ¤ÇÏ´Â ¹æ¹ýÀº

URIEncoding="UTF-8" À» Ãß°¡ÇÏ¸é µË´Ï´Ù.

 

¿¹)

    <Connector port="8080" maxHttpHeaderSize="8192"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" redirectPort="8443" acceptCount="100"
               connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="utf-8" />

 

À§¿Í °°ÀÌ Çß´Ù°í ÇØ°áµÇ´Â °ÍÀº ¾Æ´Õ´Ï´Ù. get ¹æ½ÄÀ¸·Î µ¥ÀÌÅ͸¦ Àü¼ÛÇϸé

ÀÚ¹Ù ÆÄÀÏ¿¡¼­ È®ÀÎ ÇßÀ» °æ¿ì ¹°À½Ç¥ °ª¸¸ ³Ñ¾î¿É´Ï´Ù.

 

get ¹æ½ÄÀ¸·Î º¸³¾ °æ¿ì ÀÚ¹Ù½ºÅ©¸³Æ®·Î º¯È¯À» ÇØÁÝ´Ï´Ù.

¿¹¸¦ µé¾î "ÇѱÛ"À» ÀÚ¹Ù½ºÅ©¸³Æ®¿¡¼­

<SCRIPT>alert( encodeURIComponent("ÇѱÛ") )</SCRIPT>

ó·³ encodeURIComponent ÇÔ¼ö·Î º¯È¯ÇÏ°Ô µÇ¸é %ED%95%9C%EA%B8%80 À¸·Î

º¯È¯µË´Ï´Ù. ÀÌ °ªÀ» ÁÖ¼Ò¿¡ "ÇѱÛ" ´ë½Å¿¡ ³Ö°Ô µÇ¸é ÀÚ¹Ù¿¡¼­ ¾Ë¾Æ¼­ Àß~ ¹Þ½À´Ï´Ù ^^

 

5. HttpURLConnection À» ÅëÇÏ¿© UTF-8 ·Î µÈ URL À» ÀÐÀ» °æ¿ì.

´Ù¸¥ ºÎºÐÀº µ¿ÀÏÇϰí, 

BufferedReader br = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8"));

·Î º¯°æÇÕ´Ï´Ù.

 

6. jsp -> bean µ¥ÀÌÅÍ Àü¼ÛÀº ¹®Á¦ ¾øÁö¸¸ jsp -> jsp ¿¡¼­ ÇѱÛÀÌ ±úÁø´Ù¸é

¹Þ´Â ºÎºÐ¿¡¼­

 String test = request.getParameter("test ");

 test = new String(test .getBytes("8859_1"), "UTF-8");

ó·³ º¯È¯Çؼ­ ÀúÀåÇÕ´Ï´Ù.

 

ps. Âü°í »çÀÌÆ®

http://cafe.naver.com/phpinfo.cafe?iframe_url=/ArticleRead.nhn%3Farticleid=434

Tag
tag´Â °Ô½Ã¹°ÀÇ ¼º°ÝÀ» ³ªÅ¸³»´Â Ű¿öµå¸¦ ÀÔ·ÂÇÏ´Â °ø°£ÀÔ´Ï´Ù.
tag´Â ·Î±×ÀÎ ÈÄ »ç¿ëÇÏ½Ç ¼ö ÀÖ½À´Ï´Ù.
  • ÁÁÀº ±Û °¨»çÇÕ´Ï´Ù.
  • kenu
  • 2006-07-16 23:50:49
  • x
  • ÁÁÀº ÀÚ·áÀÔ´Ï´Ù.
  • ¹«´À¹Ì
  • 2006-07-18 14:22:02
  • x
  • ¾Ñ... ºÎÁ·ÇÑ ±Û ÀοëÇØ Áּż­ °¨»çÇÕ´Ï´Ù.^^
    Á¤¸® ÀßÇϼ̳׿ä
  • ¾ÆÁÖÀÛÀº»õ
  • 2006-07-21 09:49:17
  • x
  • ¾ÆÀÌ°í ¾ÆÁÖÀÛÀº»õ´Ô²² ĪÂù ¹Þ´Ù´Ï ¿µ±¤ÀÔ´Ï´Ù. ^^
  • GHLab
  • 2006-07-21 16:36:47
  • x
´ÙÀ½±Û [err]Keystore was tampered with, or password was incorrect
>> 2477 UTF-8 °³¹ß¿¡ °üÇÑ Á¤¸®ÀÔ´Ï´Ù.  [5] GHLab 8316 08-14 09:36
ÀÌÀü±Û ½ºÇÁ¸µ ÇÁ·¹ÀÓ¿÷ÀÇ ÇÑ±Û reference ¹®¼­ÀÔ´Ï´Ù