MyBatis ½ÃÀÛÇϱâ (±âº» ¼¼ÆÃÇϱâ)
Mybatis¶õ?
¸¶À̹ÙƼ½º´Â °³¹ßÀÚ°¡ ÁöÁ¤ÇÑ SQl, ÀúÀå ÇÁ·Î½ÃÀú, ¸î °¡Áö °í±Þ ¸ÅÇÎÀ» Áö¿øÇÏ´Â ¿µ¼Ó¼º ÇÁ·¹ÀÓ¿öÅ©ÀÔ´Ï´Ù.
JDBC·Î ó¸®ÇÏ´Â »ó´ç ºÎºÐÀÇ ÄÚµå¿Í ÆĶó¹ÌÅÍ ¼³Á¤ ¹× °á°ú ¸ÅÇÎÀ» ´ë½Å ÇØÁÝ´Ï´Ù.
Mybatis ½ÃÀÛÇϱâ
mybatis.jar ÆÄÀÏ ´Ù¿î·Îµå
¸¶À̹ÙƼ½º¸¦ »ç¿ëÇϱâ À§Çؼ´Â mybatis.jar ÆÄÀÏÀ» ¶óÀ̺귯¸®¿¡ ³Ö¾îÁà¾ß ÇÕ´Ï´Ù.
mybatis.jar ¸¦ µé¾î°¡¼ mybatis-3.5.0.zip À» ´Ù¿î¹ÞÀÚ(19.2.2 ±âÁØ)
¾ÐÃàÆÄÀÏ ³»¿¡ ÀÖ´Â mybatis-3.5.0.jar ÆÄÀÏÀ» ÇÁ·ÎÁ§Æ® ³»¿¡ WEB-INF/lib Æú´õ¿¡ ³Ö¾îÁÝ´Ï´Ù.
XML catalog Ãß°¡
ÀÌŬ¸³½º¿¡¼ Window - preferences - xml - xml catalog¿¡¼ User Specified Entries¸¦ ´©¸£°í Add ¹öÆ°À» ´©¸¨´Ï´Ù.
config¿¡ ´ëÇÑ ¼³Á¤ÀÔ´Ï´Ù.
location : http://mybatis.org/dtd/mybatis-3-config.dtd
key type : public ID
key : -//mybatis.org//DTD Config 3.0//EN
ÇØ´çÇÏ´Â Ä¿¡ À§¿Í °°ÀÌ ³»¿ëÀ» Àû¾îÁØ ÈÄ OK ¹öÆ°À» ´©¸¨´Ï´Ù.
¿Ï·áÇÑ ÈÄ ´Ù½Ã Add ¹öÆ°À» ´©¸¨´Ï´Ù.
À̹ø¿¡´Â mapper ¿¡ ´ëÇÑ ¼³Á¤ÀÔ´Ï´Ù.
location : http://mybatis.org/dtd/mybatis-3-mapper.dtd
key type : public ID
key : -//mybatis.org/DTD Mapper 3.0//EN
À§¿Í °°ÀÌ Àû¾îÁØ ÈÄ OK ¹öÆ°À» ´©¸¨´Ï´Ù
µÎ °¡Áö°¡ µî·ÏµÈ °ÍÀÌ È®ÀÎµÈ ÈÄ¿¡ Apply and Close ¹öÆ°À» ´·¯ÁÝ´Ï´Ù.
mybatis-config XML ÆÄÀÏ »ý¼º
´ÙÀ½Àº xml ÆÄÀÏÀ» »ý¼ºÇØÁÝ´Ï´Ù.
ÇÁ·ÎÁ§Æ® ³»¿¡ Java Resources¿¡ ¿ìŬ¸¯ ÈÄ New - Source Folder ¸¦ ¼±ÅÃÇÕ´Ï´Ù.
Project name Àº Browse ¹öÆ°À» ´·¯¼ ÇØ´ç ÇÁ·ÎÁ§Æ® À̸§À» ¼±ÅÃÇØÁÖ°í
Folder name ¿¡ resource ¸¦ ³Ö¾îÁØ ÈÄ finish ¹öÆ°À» ´©¸¨´Ï´Ù.
»ý¼ºµÈ resource Æú´õ¿¡ mybatis-config.xml ÆÄÀÏÀ» ¸¸µé¾îÁÖ°Ú½À´Ï´Ù.
resource Æú´õ¿¡¼ ¿ìŬ¸¯ ÈÄ New - other¸¦ ¼±ÅÃÇÕ´Ï´Ù.
xml·Î °Ë»öÇϸé XML File ÀÌ ³ª¿É´Ï´Ù. ¼±ÅÃÇսôÙ.
mybatis-config.xmlÀ̶ó°í À̸§À» Àû¾îÁØ µÚ Next ¹öÆ°À» ´©¸¥ ÈÄ¿¡
¸Ç À§¿¡ DTD ÆÄÀÏÀ» ¼±ÅÂÇÑ ÈÄ Next ¸¦ ´©¸¨´Ï´Ù
óÀ½¿¡ ¾Æ¹«°Íµµ ¾ø´Ù°í ´çȲÇÏÁö ¸»°í XML Catalog entry ¸¦ ¼±ÅÃÇϸé XMl Catalog°¡ »ý±é´Ï´Ù.
¾Æ±î ¸¸µé¾îÁØ DTD config¸¦ ¼±ÅÃÇÕ´Ï´Ù.(À̹ÌÁö »ó ¸Ç À§)
´ÙÀ½ ȸ鿡¼ À̹ÌÁöó·³ µÇ¾îÀÖ´Ù¸é Àß µî·ÏµÈ °ÍÀÔ´Ï´Ù.(¾Æ´Ï¶ó¸é ¿ÀŸ¸¦ ã¾Æº¸¼¼¿ä)
Finish ¸¦ ´©¸¨´Ï´Ù.
ÀÌÁ¦ mybaits-config.xml ÆÄÀÏÀ» ¿°í DBÁ¤º¸¸¦ ³Ö¾îÁÙ°Ì´Ï´Ù.
ÅÂ±× ¾È¿¡ ´ÙÀ½°ú °°ÀÌ Àû¾îÁÝ´Ï´Ù.
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="oracle.jdbc.driver.OracleDriver"/>
<property name="url" value="jdbc:oracle:thin:@localhost:1521:xe"/>
<property name="username" value="[DB°èÁ¤À̸§]"/>
<property name="password" value="[ºñ¹Ð¹øÈ£]"/>
</dataSource>
</environment>
<mappers>
<mapper resource="/mybatis/mapper/mybatis-mapper.xml"/>
</mappers>
</environments>
property nameÀº º¯°æÇÏ½Ã¸é ¾ÈµË´Ï´Ù.
environment id¸¦ ±¸ºÐÇÏ¿© ¿©·¯ °³ÀÇ DB¸¦ µî·ÏÇÒ ¼ö µµ ÀÖ½À´Ï´Ù.
SqlSessionTemplate ¸¸µé±â
common ÆÐÅ°Áö¸¦ ¸¸µé°í SqlSessionTemplate Ŭ·¡½º¸¦ ¸¸µé¾î ÁÝ´Ï´Ù.
public static SqlSession getSession() {
String resource = "/mybatis-config.xml";
SqlSession session = null;
try {
InputStream is= Resources.getResourceAsStream(resource);
SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder();
SqlSessionFactory factory = builder.build(is);
session = factory.openSession(false);
}catch(IOException e) {
e.printStackTrace();
}
return session;
}
À§ÀÇ ÄÚµåó·³ getSession ¸Þ¼Òµå¸¦ ¸¸µì´Ï´Ù.
getSession ¸Þ¼Òµå´Â
À§¿¡¼ ¸¸µç mybatis-config.xml ÆÄÀÏÀ» °¡Á®¿Í¼ SqlSessionÀ» ¸¸µå´Â ¸Þ¼ÒµåÀÔ´Ï´Ù.
SqlSession ¾È¿¡´Â CRUD°¡ °¡´ÉÇÑ ¸Þ¼ÒµåµéÀÌ µé¾îÀÖ½À´Ï´Ù.
ÀÌÁ¦ mybatis¸¦ »ç¿ëÇϱâ À§ÇÑ ±âº»ÀûÀÎ ¼¼ÆÃÀº ³¡ÀÔ´Ï´Ù.
´ÙÀ½¿¡´Â mapper¸¦ ¸¸µé°í µ¥ÀÌÅ͸¦ »ðÀÔÇغ¸°Ú½À´Ï´Ù.
Ãâó: https://sinna94.tistory.com/entry/Mybatis-½ÃÀÛÇϱâ?category=696828 [Chungs]