준비파일

spring 2.5나 3.0

jakarta common dbcp

jakarta common logging

(log4j)

ibatis 2.3


작성파일

TestDao.java (DAO)

applicationContext.xml

jdbc.properties

test.ibatis.xml

sqlmapConfig.xml

SpringTest.java

-------------------------------------------------------

☞ TestDao.java


package test.ibatis;

import org.springframework.orm.ibatis.support.SqlMapClientDaoSupport;


public class TestDao extends SqlMapClientDaoSupport {
    public String getName(int id) {
        return (String)getSqlMapClientTemplate().queryForObject("selectTest", id);
    }
}


-------------------------------------------------------

☞ applicationContext.xml


<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
    <!-- 프로퍼티 파일 읽어들임 -->
    <bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
        <property name="locations">
            <list>
                <value>jdbc.properties</value>
            </list>
        </property>
    </bean>
   
    <!-- DB접속 -->
    <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
        <property name="driverClassName" value="${jdbc.driver}" />
        <property name="url" value="${jdbc.url}" />
        <property name="username" value="${jdbc.user}" />
        <property name="password" value="${jdbc.pass}" />
    </bean>
   
    <!-- Data Access클래스(ibatis와 연동할때 꼭 필요한지??) -->
    <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
        <property name="dataSource">
            <ref bean="dataSource" />
        </property>
    </bean>
   
    <bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
        <property name="configLocation">
            <value>sqlmapConfig.xml</value>
        </property>
    </bean>
   
    <bean id="testDao" class="test.ibatis.TestDao">
        <property name="dataSource" ref="dataSource"/>
        <property name="sqlMapClient" ref="sqlMapClient"/>
    </bean>
</beans>


-------------------------------------------------------

☞ jdbc.properties


jdbc.driver=org.gjt.mm.mysql.Driver
jdbc.url=jdbc:mysql://localhost/foods
jdbc.user=midori
jdbc.pass=midori




-------------------------------------------------------

☞ test.ibatis.xml

ibatis와 같음



-------------------------------------------------------

☞ sqlmapConfig.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE sqlMapConfig PUBLIC "-//iBATIS.com//DTD SQL Map Config 2.0//EN" "http://www.ibatis.com/dtd/sql-map-config-2.dtd">
<sqlMapConfig>

    <sqlMap resource="test/ibatis/test.ibatis.xml" />
</sqlMapConfig>


※ db연결부분은 spring에서 관리


-------------------------------------------------------

☞ SpringTest.java


import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

import test.ibatis.TestDao;


public class SpringTest {

    /**
     * @param args
     */
    public static void main(String[] args) {
        ApplicationContext appContext =
            new ClassPathXmlApplicationContext("applicationContext.xml");
        TestDao dao = (TestDao)appContext.getBean("testDao");
        String test = dao.getName(1);
        System.out.println("test =" + test);
    }

}

참고 url

http://programmingindex.blog134.fc2.com/


'ibatis' 카테고리의 다른 글

simple CRUD  (0) 2011.04.29
ibatis simple select java bean class와 연동하기  (0) 2011.04.29
ibatis simple select  (0) 2011.04.29
Dao를 싱글턴 패턴으로 수정  (0) 2011.04.21
Dao작성  (0) 2011.04.21

+ Recent posts