JDBC ÇÁ·Î±×·¡¹Ö ¹æ¹ý
¾Æ·¡ ¼ø¼´Â JDBC ÇÁ·Î±×·¡¹Ö ¹æ¹ý¼ø¼ÀÔ´Ï´Ù. ¿Ü¿ì¼Å¾ß ÇÕ´Ï´Ù.
- JDBC µå¶óÀ̹ö ·Îµù
- Connection ¸Î±â
- SQL ½ÇÇà
- [SQL¹®ÀÌ select¹®À̾ú´Ù¸é ResultSetÀ» ÀÌ¿ëÇÑ Ã³¸®]
- ÀÚ¿ø ¹Ýȯ
¾Æ·¡ ¼³¸íÀº Àü °Á¿¡¼ ¾²ÀÎ GetEmp.java ¼Ò½º¸¦ Âü°íÇÏ½Ã°í º¸½Ã±â ¹Ù¶ø´Ï´Ù.
1. JDBC µå¶óÀ̹ö ·Îµù
Class.forName ( "oracle.jdbc.driver.OracleDriver" );
¢¡ °ýÈ£¾È¿¡ ¹®ÀÚ¿ÀÌ Æ¯Á¤ º¥´õÀÇ µå¶óÀ̹ö¸¦ ÀǹÌÇÕ´Ï´Ù.
½ÇÁ¦·Î classes12.jar ÆÄÀÏÀ» Ç®¾îº¸¸é oracle.jdbc.driver ÆÑŰÁö ¾È¿¡ OracleDriver.class ÆÄÀÏÀ» È®ÀÎÇÒ ¼ö ÀÖ½À´Ï´Ù.
2. Connection ¸Î±â
conn = DriverManager.getConnection(DB_URL, DB_USER, DB_PASSWORD);
¢¡ JDBC API´Â ´ëºÎºÐ ÀÎÅÍÆäÀ̽º ŸÀÔÀÔ´Ï´Ù.
ÇÏÁö¸¸ ±×Áß¿¡¼ DriverManager´Â ±¸ÇöÀÌ µÇ¾î Àִ Ŭ·¡½ºÀÔ´Ï´Ù.
DriverManager Ŭ·¡½ºÀÇ ¿ªÈ°Àº À̸§ ±×´ë·Î µ¥ÀÌÅͺ£À̽º º¥´õµéÀÌ JDBC API¸¦ ±¸ÇöÇÑ µå¶óÀ̹öµéÀ» °ü¸®ÇÕ´Ï´Ù.
DriverManager.getConnection ¸Þ¼Òµå´Â ÆÄ¶ó¹ÌÅÍ¿¡ µû¶ó¼ ƯÁ¤ µ¥ÀÌÅͺ£À̽º º¥´õ°¡ ±¸ÇöÇÑ Connection °´Ã¼¸¦ ¹ÝȯÇÕ´Ï´Ù.
3. SQL ½ÇÇà
// Statement¸¦ °¡Á®¿Â´Ù. stmt = conn.createStatement(); // SQL¹®À» ½ÇÇàÇÑ´Ù. rs = stmt.executeQuery(query);
¢¡ SQL ¹®À» µ¥ÀÌÅͺ£À̽º·Î Àü¼ÛÇϱâ À§Çؼ´Â Statement °´Ã¼¸¦ ÀÌ¿ëÇØ¾ß ÇÕ´Ï´Ù.
Statement °´Ã¼´Â Connection °´Ã¼¸¦ ÅëÇØ¼ »ý¼ºÇÕ´Ï´Ù.
4. [SQL¹®ÀÌ select¹®À̾ú´Ù¸é ResultSetÀ» ÀÌ¿ëÇÑ Ã³¸®]
while ( rs.next() ) {
String empno = rs.getString(1);
String ename = rs.getString(2);
...
..
SQL¹®ÀÌ select ¹®ÀåÀÏ °æ¿ì Statement°´Ã¼ÀÇ executeQuery ¸Þ¼Òµå¸¦ ÀÌ¿ëÇÕ´Ï´Ù.
¸¸ÀÏ SQL¹®ÀÌ insert³ª update ¹®ÀÏ °æ¿ì Statement °´Ã¼ÀÇ ¸¸ÀÏ SQL¹®ÀÌ select ¹® À̾ú´Ù¸é ·¹Äڵ带 ¹Ýȯ¹Þ¾Æ ´ãÀ» °´Ã¼°¡ ÇÊ¿äÇÕ´Ï´Ù.
·¹Äڵ带 ´ãÀ» ±×¸© ¿ªÈ°À» ÇÏ´Â °ÍÀÌ ResultSet °´Ã¼ÀÔ´Ï´Ù.
¹ÝȯµÈ ResultSet °´Ã¼ÀÇ ÇöÀç Ä¿¼ÀÇ À§Ä¡´Â ù¹øÂ° ·¹ÄÚµå ÀÌÀüÀ» °¡¸£Å°°í ÀÖ½À´Ï´Ù.
µû¶ó¼ ù¹øÂ° ·¹Äڵ带 °¡¸£Å°°Ô ÇÏ·Á¸é next()¸Þ¼Òµå°¡ ¹Ýµå½Ã ½ÇÇàµÇ¾î¾ß ÇÕ´Ï´Ù.
5. ÀÚ¿ø ¹Ýȯ
// ResultSet¸¦ ´Ý´Â´Ù. rs.close(); // Statement¸¦ ´Ý´Â´Ù. stmt.close(); // Connection¸¦ ´Ý´Â´Ù. conn.close();
»ý¼ºÇÑ ¼ø¼ÀÇ ¹Ý´ë·Î °´Ã¼¸¦ ´Ý¾Æ ÀÚ¿øÀ» ¹ÝȯÇÕ´Ï´Ù.
- ´ÙÀ½ °Á : Å×ÀÌºí »ý¼º
- ÀÌÀü °Á : ¿À¶óŬ JDBC µå¶óÀ̹ö ¼³Ä¡ ¹× Å×½ºÆ®
