import static org.junit.Assert.*;
import java.io.FileWriter;
import java.io.IOException;
import java.sql.Connection;
import java.sql.SQLException;
import org.dbunit.database.DatabaseConnection;
import org.dbunit.database.IDatabaseConnection;
import org.dbunit.dataset.DataSetException;
import org.dbunit.dataset.IDataSet;
import org.dbunit.dataset.xml.*;
import org.dbunit.operation.DatabaseOperation;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
import dao.*;
//import org.xml.*;
import org.xml.sax.InputSource;
import com.mchange.v2.c3p0.ComboPooledDataSource;
public class TestInsertDataByDBunit {
@Test
public void testInsertDataByDBunit() throws SQLException {
Dao d=new Dao();
Object[] param={"mfx","mfz","mqs"};
assertEquals(1,d.insertdataByDBunit(param));
System.out.println("tdb");
}
@Test
public void testInsertDataByDBunit2() throws SQLException{
ComboPooledDataSource ds2=new ComboPooledDataSource("mysql2");
Connection conn=ds2.getConnection();
IDatabaseConnection conn2=new DatabaseConnection(conn);//base基础
InputSource inputS=new InputSource(TestInsertDataByDBunit.class.getClassLoader().getResourceAsStream("t_myclass.xml"));
//FlatXmlProducer fxp=new FlatXmlProducer(inputS);
try {
IDataSet ds=new FlatXmlDataSet(inputS);
DatabaseOperation.CLEAN_INSERT.execute(conn2,ds);//ds为数据set,conn2为链接
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println("insert");
}
@Test
public void testBackUp() throws SQLException{
ComboPooledDataSource cp=new ComboPooledDataSource("mysql2");
Connection conn=cp.getConnection();
IDatabaseConnection conn2=new DatabaseConnection(conn);//基于数据库链接池中得到的链接,对链接进行特殊封装
IDataSet ds=conn2.createDataSet();//将coon2链接对应的数据库中的数据全部封装到ds中
try {
FlatXmlDataSet.write(ds,new FileWriter("E:/test.xml"));//将ds中分装的数据写到test.xml中
} catch (DataSetException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println("backup");
}
}
请看代码