IBATIS/myBatis
2017.05.22 / 18:08

MyBatis Scope and Lifecycle

ducati
Ãßõ ¼ö 234

MyBatis¿¡¼­ ÇÙ½É Å¬·¡½ºÀÇ Scope °ú Lifecycle¸¦ ÀÌÇظ¦ ÇØ¾ß »ç¿ë½Ã ¾²·¹µå µ¿½Ã¼º ¹®Á¦¸¦
¹æÁö ÇÒ¼ö ÀÖ½À´Ï´Ù.

  • SqlSessionFactoryBuilder

SqlSessionFactory ¸¦ »ý¼ºÇÒ¶§¸¸ »ç¿ëÇϴ Ŭ·¡½º ÀÔ´Ï´Ù.
Áï, ÇÊ¿äÇÒ¶§¸¸ »ç¿ëÇϴ Ŭ·¡½º·Î½á instance »ý¸í ÁÖ±â´Â method ´ÜÀ§ÀÇ scope ÀÔ´Ï´Ù.

  • SqlSessionFactory

SqlSession¸¦ »ý¼ºÇϴ Ŭ·¡½º ÀÔ´Ï´Ù. SqlSessionÀº JDBC¿¡¼­
ConnectionÀ̶ó°í »ý°¢ Çϸé ÀÌÇØ°¡ ½±½À´Ï´Ù. 
SqlSessionFactory ´Â Connection Pooló·³ °è¼Ó Á¦»ç¿ëÀ» ÇØ¾ß Çϱ⠶§¹®¿¡
instance »ý¸í ÁÖ±â´Â application ´ÜÀ§ÀÇ scope ÀÔ´Ï´Ù.
One SqlSessionFactory instance per database
(Database°¡ n°³ÀÎ °æ¿ì SqlSessionFactoryµµ n°³)

  • SqlSession

SqlSessionÀº À§¿¡¼­ ¼³¸íÇÑ °Í ó·³ JDBC Connection°ú ºñ½ÁÇÑ »çÀÌŬÀ»
°¡Áö±â ¶§¹®¿¡ instance »ý¸í ÁÖ±â´Â request ´ÜÀ§ÀÇ scope ÀÔ´Ï´Ù.

  • Mapper Instances

½ÇÁ¦·Î SQL¸¦ ½ÇÇàÇÏ´Â ¿ªÇÒÀ» Çϱ⠶§¹®¿¡ instance 
»ý¸í ÁÖ±â´Â method ´ÜÀ§ÀÇ scope ÀÔ´Ï´Ù.
¹Ýµå½Ã MyBatis¸¦ »ç¿ëÇϽǶ§ À§ÀÇ scopeÀ» ÀÎÁö ÇϽðí 
ÇÁ·ÎÁ§Æ®¿¡¼­ Àß »ç¿ë Çϱâ½Ã ¹Ù¶ø´Ï´Ù.
 


Ãâó: http://devx.tistory.com/entry/MyBatis-Scope-and-Lifecycle [Meta Developer Story]