±Û¾´ÀÌ :ÀÓäȯ 1999³â 1¿ù 22ÀÏ 17:12:44
In Reply to: jdbc ÇÑ±Û °ü·Ã ¹®Á¦(Á¦¹ß...) posted by ±è»óÇõ on 1999³â 1¿ù 19ÀÏ 01:11:51:
¤· ´ë»ó : ´Ù¸¥ºÐµéÀÌ Á¦½ÃÇÑ ¹æ¹ýÀ¸·Î ½Ãµµ Çغ¸¾Ò´Âµ¥ Àß ¾ÈµÇ½Ã´Â ºÐ
Àúµµ ±×·¯ÇßµíÀÌ ÀÚ¹Ù¸¦ ½ÃÀÛÇϽô ´ëºÎºÐÀÇ Ãʺ¸ÀÚµéÀÌ Çѱ۹®Á¦·Î °¡Àå °í»ýÇϽô °Í °°½À´Ï´Ù
¶Ç ´ëºÎºÐÀÇ ÇØ°áÃ¥µéÀÌ ´ë·«ÀûÀÎ °Í¸¸ ÀÏ·¯ÁÖ¾î¼ Ãʺ¸Àڵ鿡°Ô´Â ¿ª½Ã ÇϳªÇϳª°¡ ´Ù Àå¾Ö¹°À̶ó
»ý°¢µÇ¾î Á»´õ ±¸Ã¼ÀûÀÎ ¼Ò½º¸¦ ÅëÇؼ ¾Ë·Áµå¸®·Á°í ÇÕ´Ï´Ù.
´Ü ¿©±â¼´Â ±è´öÅ´ÔÀÇ HDriverManager·Î ÇØ°áÇÏ¿´½À´Ï´Ù.
À¥¼¹ö : À©95¿ë ÀÚ¹ÙÀ¥¼¹ö 1.1°ú ¼Ö¶ó¸®½º2.5ÀÇ ¾ÆÆÄÄ¡ 1.1.3(¼ºê¸´ ¸ðµâÃß°¡µÈ °Í)¿¡¼ Å×½ºÆ®
¿À¶óŬ : 7.2.2.3.0
JDBC : 7.3.4(?) thin
jdk : 1.1.7
1. ¸ÕÀú ¿À¶óŬ¿¡¼ Äõ¸®ÇØ¿À´Â °ÍÀÔ´Ï´Ù.
¤· Çì´õ¿Í ºê¶ó¿ìÀú¿¡ Ãâ·ÂÇÏ´Â ºÎºÐÀº ´ÙÀ½°ú °°ÀÌ ¸ÂÃ߽ðí
res.setContentType("text/html;charset=euc-kr");
PrintWriter out=new PrintWriter(new OutputStreamWriter(res.getOutputStream(),"KSC5601"));
¤· Ä¿³Ø¼ÇÇÏ´Â ºÎºÐÀº ±è´öÅ´ÔÀÇ ¼öÁ¤ Ŭ·¡½º¸¦ »ç¿ëÇÕ´Ï´Ù.
Connection con = HDriverManager11.getConnection(url, DB_USER, DB_PASSWD);
¤· Äõ¸®Çؼ ºê¶ó¿ìÁ®¿¡ Ãâ·ÂÇÏ´Â °ÍÀº ´ÙÀ½°ú °°½À´Ï´Ù.
out.println( "<font size=2 face=±¼¸²>"+rs.getString("subject") + "</font></A></TD>" );
2. ¿À¶óŬ¿¡ ÀÚ·á ÀúÀåÇÏ´Â ¹æ¹ý
¤· html Æû¿¡¼ ÀڷḦ ÀÔ·Â¹Þ¾Æ ³Ñ¾î¿Â µ¥ÀÌŸ¸¦ getParameter·Î ¹ÞÀ»¶§ À¯´ÏÄÚµå·Î
³Ñ¾î¿À±â¶§¹®¿¡ ÀÌ°ÍÀ» Çѱ۷Πº¯È¯ÇØÁÖ¾î¾ß ÇÕ´Ï´Ù. ¿Ö³ÄÇÏ¸é ¿À¶óŬ 7.x´ë¿¡¼´Â À¯´ÏÄÚµå
Áö¿øÀÌ ¾ÈµÇ´Ï±î¿ä.
String subj = ascii2ksc(req.getParameter("subj"));
private String ascii2ksc(String str)
{
String result = null;
try {
result = new String(str.getBytes("8859_1"), "KSC5601");
}
catch (java.io.UnsupportedEncodingException e) {
System.err.println(e.toString());
}
return result;
}
¤· ³Ñ°Ü¹ÞÀº ÀڷḦ ¿À¶óŬ¿¡ ³Ö±â Àü¿¡ ¿ª½Ã ´ÙÀ½°ú °°ÀÌ ¼³Á¤ÇØÁÖ°í
res.setContentType("text/html;charset=euc-kr");
PrintWriter out=new PrintWriter(new OutputStreamWriter(res.getOutputStream(),"KSC5601"));
¤· Ä¿³Ø¼ÇºÎºÐÀº ±è´öÅ´ÔÀÇ ¼öÁ¤Å¬·¡½º·Î ¿¬°áÇÏ°í
Connection con = HDriverManager11.getConnection(url, DB_USER, DB_PASSWD);
¤· ÀμƮ¹®À» »ý¼ºÇÕ´Ï´Ù. À§¿¡¼´Â subj·Î ÀԷ¹ÞÀº Á¦¸ñ¸¸À» ¿¹·Î µé¾ú´Âµ¥ ¾Æ·¡¿¡´Â ´Ù¸¥
Ç׸ñµµ °°ÀÌ Æ÷ÇÔ½ÃÄ×½À´Ï´Ù.
String query2 = "INSERT INTO bbs_table"
+ " (num, writer, passwd, email, subject, content, c_date, visted) "
+ " VALUES (" + maxno + ",'" + wri + "','" + pwd + "','" + email + "','" + subj
+ "','" + content + "', sysdate, 0)";
¤· ´ÙÀ½À¸·Î ÀμƮ¹®À» ¿À¶óŬ·Î ³¯¸®¸é µÇ°ÚÁÒ
stmt.executeUpdate( query2 );
ÀÌÁ¤µµ·Î¸¸ ÇÏ½Ã¸é ¹®Á¦¾øÀÌ ¼ºí¸´¿¡¼ ¿À¶óŬ·Î ÀúÀå½Ã Çѱ۹®Á¦°¡ ÇØ°áµÇ¸®¶ó »ý°¢ÀÌ µË´Ï´Ù.
Çϳª´õ µ¡ºÙÀÌ¸é º¸Åë Çѱ۹®Á¦ÀÇ ÇØ°áÀ» À§ÇØ ¿À¶óŬÀÇ character setÀ» º¯°æÇØ¾ß µÈ´Ù°í
ÇÏ´õ±º¿ä. ±×·¯³ª ±è´öÅ´ÔÀÇ HDriverManager¸¦ »ç¿ëÇÏ¸é ¾ÆÁÖ ¸»²ûÈ÷ ÇØ°áµÇÁÒ. ¿À¶óŬÀ»
º¯°æÇÏ´Â ¹®Á¦°¡ ±×¸® °£´ÜÇÏÁö¸¸Àº ¾ÊÁÒ. ¿Ö³ÄÇϸé ÇöÀç »ç¿ëÁß¿¡ ÀÖ´Â ¿À¶óŬÀ» °°ÀÌ »ç¿ëÇؾß
µÉ °æ¿ì¶óµçÁö ¹®Á¦°¡ ¹ß»ýÇÏ°Ô µÇÁÒ.
ÀÌ ÀÚ¸®¸¦ ºô¾î ±è´öÅ´ÔÀÇ ¼ö°í¿¡ ´Ù½Ã Çѹø °¨»çµå¸³´Ï´Ù. ±è´öÅ´԰ú °°Àº ºÐÀÇ ³ë·ÂÀ¸·Î
¿ì¸®°°Àº »ç¶÷µéÀº Çѱ۹®Á¦¿¡ ±×¸® Å« ½Å°æÀ» ¾²Áö ¾Ê¾Æµµ µÇ´Ï±î¿ä.. »óÀÌ¶óµµ Çѹø µå·Á¾ß µÉ °Í
°°Àºµ¥ Á¦°¡ ÈûÀÌ ¾ø¾î¼¸®..
Âü Çѱ۹®Á¦°¡ ¿Ö »ý±â´ÂÁö ¸ð¸£½Ã´Â ºÐÀ» À§ÇØ °³³äÀûÀÎ °Í¸¸ °£´ÜÈ÷ ÀûÀ¸¸ç ¸¶Ä¨´Ï´Ù..
ÀÚ¹Ù³»ºÎÀûÀ¸·Î ¹®ÀÚ¸¦ À¯´ÏÄÚµå·Î ÇØ°áÇϱ⶧¹®¿¡ »ó´çÈ÷ Æí¸®ÇÑ Á¡µµ ¸¹ÀÌ ÀÖÁö¸¸ ¾ÆÁ÷ ±× ÁÖÀ§
ȯ°æ Áï OS,DB ... µîµîÀÌ À¯´ÏÄڵ带 Áö¿øÇØÁÖÁö ¸øÇؼ ¿ì¸®°°Àº ¿µ¾î±Ç ÀÌ¿ÜÀÇ ±¹°¡¿¡¼´Â
¾ÆÁ÷ »ó´çºÎºÐ ¹®Á¦¸¦ ¾È°í ÀÖ½À´Ï´Ù. µû¶ó¼ ÀÚ¹Ù¿Í ¿À¶óŬ°£¿¡ ¹®ÀÚ°¡ ¹®Á¦¾øÀÌ ¿À°í°¡·Á¸é
±×¿¡ ¸Â´Â º¯È¯ÀÛ¾÷ÀÌ ÇÊ¿äÇÕ´Ï´Ù. ¿¹¸¦ µé¾î ÀÚ¹Ù¿¡¼ ¿À¶óŬ·Î º¸³¾¶§´Â À¯´ÏÄڵ带 Çѱ۷Î,
¿À¶óŬ¿¡¼ ÀÚ¹Ù·Î º¸³¾¶§´Â Çѱۿ¡¼ À¯´ÏÄÚµå·Î µîÀÇ º¯È¯°úÁ¤ÀÌ ÇÊ¿äÇÑ °ÍÀÌÁÒ.