ibtis配置之添加ibatis Dao支持
我們可以按照如下的順序來添加ibatis Dao。涉及添加ibatis Dao工作的代碼如下。
添加ibatis Dao步驟一:添加配置文件dao.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE daoConfig PUBLIC "-//ibatis.apache.org//DTD DAO Configuration 2.0//EN" "http://ibatis.apache.org/dtd/dao-2.dtd">
<daoConfig>
    <context>
        <transactionManager type="SQLMAP">
            <property name="SqlMapConfigResource"
                      value="yidishui/daoIbatisImpl/sql/SqlMapConfig.xml"/>
        </transactionManager>
        <dao interface="yidishui.dao.PersonDao"  implementation="yidishui.daoIbatisImpl.PersonDaoImpl2"/>
    </context>
</daoConfig>
 
添加ibatis Dao步驟二:添加DaoConfig類
package yidishui;
import com.ibatis.dao.client.DaoManager;
import com.ibatis.dao.client.DaoManagerBuilder;
import com.ibatis.common.resources.Resources;
import java.io.Reader;
import java.util.Properties;
public class DaoConfig {
    private static final String resource = "yidishui/dao.xml";
    private static final DaoManager daoManager;
    static {
        daoManager = newDaoManager(null);
    }
    public static DaoManager getDaoManager() {
        return daoManager;
    }
    public static DaoManager newDaoManager(Properties props) {
        try {
            Reader reader = Resources.getResourceAsReader(resource);
            return DaoManagerBuilder.buildDaoManager(reader, props);
        } catch (Exception e) {
            throw new RuntimeException("Could not initialize DaoConfig.  Cause: " + e, e);
        }
    }
}
添加ibatis Dao步驟三:修改Dao實(shí)現(xiàn),添加類PersonDaoImpl2
package yidishui.daoIbatisImpl;
import yidishui.dao.PersonDao;
import yidishui.domain.Person;
import java.util.List;
import java.sql.SQLException;
import com.ibatis.dao.client.template.SqlMapDaoTemplate;
import com.ibatis.dao.client.DaoManager;
public class PersonDaoImpl2 extends SqlMapDaoTemplate implements PersonDao {
    public PersonDaoImpl2(DaoManager daoManager) {
        super(daoManager);
    }
    public void insertPerson(Person person) throws SQLException {
        insert("insertPerson", person);
    }
    public void updatePerson(Person person) throws SQLException {
        update("updatePerson", person);
    }
    public Person getPersonById(int personId) throws SQLException {
        return (Person) queryForObject("getPersonById", personId);
    }
    public void deletePerson(int personId) throws SQLException {
        delete("deletePerson", personId);
    }
    public List allPersonList() throws SQLException {
        return queryForList("allPersonList", null);
    }
}
添加ibatis Dao步驟四:測(cè)試PersonDaoImpl2Test(正確行驗(yàn)證)
package yidishui.daoIbatisImpl;
import junit.framework.*;
import yidishui.daoIbatisImpl.PersonDaoImpl;
import yidishui.domain.Person;
import yidishui.dao.PersonDao;
import yidishui.DaoConfig;
import java.sql.SQLException;
import java.util.List;
import com.ibatis.dao.client.DaoManager;
public class PersonDaoImpl2Test extends TestCase {
DaoManager daoManager;
    protected void setUp() throws Exception {
        daoManager = DaoConfig.getDaoManager();
    }
    public void testInsertPerson() {
        PersonDao personDao = (PersonDao) daoManager.getDao(PersonDao.class);
        Person person = new Person();
        person.setPersonName("yidishui");
        person.setPersonEmail("yidishui1570@gamil.com");
        person.setPersonAge(100);
        try {
            personDao.insertPerson(person);
        } catch (SQLException e) {
            e.printStackTrace();  //To change body of catch statement use File | Settings | File Templates.
        }
}
    public void testUpdatePerson() throws Exception {
        PersonDao personDao = (PersonDao) daoManager.getDao(PersonDao.class);
        Person person = new Person();
        person.setPersonId(1);
        person.setPersonName("caotao");
        person.setPersonEmail("caotao1570@gamil.com");
        person.setPersonAge(1100);
        personDao.updatePerson(person);
}
    public void testDeletePerson() throws Exception {
        PersonDao personDao = (PersonDao) daoManager.getDao(PersonDao.class);
        personDao.deletePerson(1);
    }
    public void testAllPersonList() throws Exception {
        PersonDao personDao = (PersonDao) daoManager.getDao(PersonDao.class);
        List list = personDao.allPersonList();
        assertTrue("list size is 0", list.size() > 0);
        for (int i = 0; i < list.size(); i++) {
            Person person = (Person) list.get(i);
            System.out.println(person.getPersonName());
        }
    }
}
添加ibatis Dao步驟五:運(yùn)行測(cè)試
測(cè)試成功ok完成。
通過以上五個(gè)步驟,我們可以很好的完成ibatis Dao的添加,希望對(duì)朋友們有所幫助。
【編輯推薦】















 
 
 
 
 
 
 