ibatis搭建二

基本配置见上篇
一.添加配置文件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 >
二.添加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);
        }

    }

}
三.修改Dao实现,添加类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);
    }

}
四,测试PersonDaoImpl2Test(正确行验证)
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());
        }

    }


}
五.运行测试
 测试成功ok完成
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值