¾È³çÇϼ¼¿ä.
³ª¸§´ë·Î ²Ï ¾µ¸¸ÇÏ´Ù°í »ý°¢ÇÏ´Â DB Framework¸¦ °ø°³ÇÕ´Ï´Ù =¤µ=;
http://bleujin.tistory.com/153
¿¡ °¡¸é Á¶±Ý ´õ ÀÚ¼¼ÇÑ ¼³¸íÀÌ ÀÖ°ÚÁö¸¸ °£´ÜÈ÷ ÷¾ðÇÏÀÚ¸é..
(ÇØ´ç ÆäÀÌÁö ¾Æ·¡ºÎºÐ¿¡ ¼Ò½ºÆÄÀϰú jar ÆÄÀÏÀ» ´Ù¿î·Îµå ¹ÞÀ»¼ö ÀÖ½À´Ï´Ù. )
ÇØ´ç ÇÁ·¹ÀÓ¿öÅ©ÀÇ Æ¯Â¡Àº ¼¼°¡Áö ÀÔ´Ï´Ù.
ù¹øÂ° ÇÁ·¹ÀÓ¿öÅ© »ç¿ëÀÚ´Â
·¹À̾î ÇÁ·¹ÀÓ¿÷ÀÇ Æ¯¼º»ó JDBCÀÇ API¿¡ Á¢±ÙÇÒ Çʿ䵵 ȤÀº Á¢±ÙÇØ¾ß ÇÒ ÀÌÀ¯µµ ¾ø¾î¾ß µÈ´Ù.
µÎ¹øÂ° »ç¿ë¿¡ ÀÖ¾î¼ ±âº»ÀÇ ·¹°Å½Ã ¹æ¹ýº¸´Ù °£ÆíÇØ¾ß ÇÏ¸ç »ç¿ëÀÚÀÇ ½Ç¼ö °¡´É¼º¿¡ °ü´ëÇØ¾ß ÇÑ´Ù.
¼¼¹øÂ° ´Ù¾çÇÑ »óȲ¿¡ ÀûÀÀÇÒ¼ö ÀÖ¾î¾ß ÇÏ¸ç µ¿½Ã¿¡ ºÒÇÊ¿äÇÑ ¿À¹öÇìµå¸¦ ÀÏÀ¸ÄѼ´Â ¾ÈµÈ´Ù.
Ãʰ£´Ü »ç¿ë¹æ¹ýÀ» ÀûÀÚ¸é
÷ºÎÆÄÀÏÀ» ´Ù¿î·Îµå ¹Þ¾Æ¼ »ç¿ëÇϰíÀÚ ÇÏ´Â JDBC Driver ÆÄÀϰú ÇÔ²² Path ¼³Á¤ÇØÁÖ°í
// DB ¿¬°áÁ¤º¸¸¦ ¼ÂÆÃÇÑ´Ù.
DBManager dbm = new MySQLPoolDBManager("jdbc:mysql://novision/test", "bleu", "redf") ;
// DB °ü¸®ÀÚ¸¦ ¼³Á¤Çϰí ÃʱâÈÇÑ´Ù.(ÃʱâÈ´Â ApplicationÀÇ ¼ö¸í¿¡¼ ´Ü Çѹø ½ÇÇà)
DBController dc = new DBController(dbm) ;
dc.initSelf() ;
IUserCommand cmd = dc.createUserCommand("select * from copy_tblc where a > :a") ;
cmd.addParam("a", 1) ;
cmd.setPage(Page.create(10, 2)) ; // 10°³¾¿ ÇßÀ»¶§ 2page ³»¿ë
Rows rows = cmd.execQuery() ;
Rows page3 = rows.getNextPage() ; // 3 page ³»¿ë °¡Á®¿À±â..
// Application Á¾·á½Ã ´Ü Çѹø ½ÇÇà..
dc.destroySelf() ;
³¡ÀÔ´Ï´Ù. Á¤¸» °£´ÜÇÏÁÒ? -¤µ-
Ç®¸µÀ» °ü¸®Çϰųª Ä¿³Ø¼ÇÀ» ´Ý´Â´Ù°Å³ª PreparedStatement¿Í ResultSetÀ» ¾î¶»°Ô ÇØ¾ß ÇѴٵ簡..
±×·±°Å ´Ù ¾Ë¾Æ¼ ÇÕ´Ï´Ù. =¤µ=;
ÇÁ·Î±×·¥ ½ÃÀ۽à initSelf() Á¾·á½Ã destorySelf()¸¸ ÇØÁÖ¸é µË´Ï´Ù.
Rows´Â jdbc.sql.ResultSet Interface¸¦ impl Ç߱⶧¹®¿¡
±âÁ¸ÀÇ ¸Þ¼Òµå °ÅÀÇ ´ëºÎºÐ µ¿ÀÏÇÏ°Ô ¾²¸é µË´Ï´Ù.
±×¸®°í ¼ø¼öÇÑ Value Object À̱⠶§¹®¿¡
close()¸¦ ÇØÁÖÁö ¾Ê¾Æµµ µÇ°í(ÀÎÅÍÆäÀ̽º¿¡ Á¤ÀǵǾî Àֱ⠶§¹®¿¡ close()°¡ ÀÖ±ä ÇÏÁö¸¸ ÀüÇô »ó°ü¾ø½À´Ï´Ù.)
ÆÄ¶ó¹ÌÅÍ·Î °ªÃ³·³ Àü´ÞÇØµµ µË´Ï´Ù.
Dao·Î ¹Ù²Ù°í ½Í´Ù¸é..
List<ValueObject> list = (List<ValueObject>)rows.toHandle(new BeanListHandler(ValueObject.class)) ;
¿Í °°ÀÌ ÇØÁÖ¸é Dao·Î º¯°æ°¡´ÉÇÕ´Ï´Ù.
¹°·Ð ±× ¹Û¿¡µµ ¸¹Àº ±â´ÉÀÌ ÀÖ½À´Ï´Ù.
Prcedure, Lob Handle, Distributed Transaction, Batch ó¸®, Plan º¸±â
Paging, Selectable Cache, User Defined Handling µîµî ¸»ÀÌÁÒ. =¤µ=
±âº»ÀûÀ¸·Î Oracle, MSSQL, MySQLÀº ¸ðµç±â´ÉÀ» »ç¿ëÇÒ¼ö ÀÖ°í Å×½ºÆ®¼ÂÀ¸·Î Á¡°ËÇϸç
±× ¹Û¿¡ H2, HSQL µîµîÀÇ ±âŸ DBµµ »ç¿ëÇÒ¼ö ÀÖ½À´Ï´Ù.
°¡Àå Å« Ư¡Àº ...
¾Õ¼ ¸»Çßµç ÇÁ·¹ÀÓ¿öÅ© »ç¿ëÀÚÀÇ ½Ç¼ö °¡´É¼ºÀ» ÃÖ´ëÇÑ ÁÙÀϼö ÀÖµµ·Ï ´Ü¼øÇϸç
µ¿½Ã¿¡ DB¿¡ µðÆæ´øÆ®ÇÑ(Lob, Procedure, Batch, Paging, cursor µîµî) ºÎºÐ¿¡¼
ÀÚÀ¯·Î¿ï¼ö ÀÖ°Ô DBº°·Î °¡Àå È¿À²ÀûÀÎ ¹æ¹ýÀ» »ç¿ëÇϸé¼
µ¿½Ã¿¡ °°Àº ÀÎÅÍÆäÀ̽º¸¦ »ç¿ëÇÒ¼ö ÀÖ°Ô ÇÔÀ¸·Î¼ °³³ä ½¬ÇÁÆ® È¥¶õÀ» °ÞÁö ¾Ê°Ô Çϴ°ÅÁÒ
... Ȥ½Ã »ç¿ë½Ã ±Ã±ÝÇÑÁ¡ÀÌ Àְųª ¹ÌÁøÇÑ ºÎºÐÀÌ ÀÖÀ¸½Ã¸é
¸ÞÀÏÀ̳ª ºí·Î±×¿¡ ³²°ÜµÎ½Ã¸é Âü°íÇϰڽÀ´Ï´Ù.