Mybatis Junit測試

目錄大體java

1.Maven 配置mysql

<dependencies>
      <dependency>
        <groupId>org.mybatis</groupId>
        <artifactId>mybatis</artifactId>
      </dependency>
      <dependency>
	    <groupId>mysql</groupId>
	    <artifactId>mysql-connector-java</artifactId>
	 </dependency>
	 <dependency>  
        <groupId>junit</groupId>  
        <artifactId>junit</artifactId>  
    </dependency>
    <dependency>
	    <groupId>org.slf4j</groupId>
		<artifactId>slf4j-log4j12</artifactId>
	</dependency>
  </dependencies>

2.配置文件sql

<?xml version="1.0" encoding="UTF-8"?>   
<!DOCTYPE configuration   
    PUBLIC "-//mybatis.org//DTD Config 3.0//EN"   
    "http://mybatis.org/dtd/mybatis-3-config.dtd">   
    
<configuration>   
    <settings>   
        <!-- changes from the defaults for testing -->   
        <setting name="cacheEnabled" value="false" />   
        <setting name="useGeneratedKeys" value="true" />   
        <setting name="defaultExecutorType" value="REUSE" /> 
        <!--設置日誌實現-->
        <setting name="logImpl" value="LOG4J"/>  
    </settings>  
    <environments default="development">   
       <environment id="development">   
           <transactionManager type="jdbc"/>   
           <dataSource type="POOLED">   
              <property name="driver" value="com.mysql.jdbc.Driver"/>   
              <property name="url" value="jdbc:mysql://***"/>   
              <property name="username" value="***"/>   
              <property name="password" value="***"/>   
           </dataSource>   
       </environment>   
    </environments>   
    <mappers>   
        <!--mapper 日誌路徑-->
        <mapper resource="com/wuage/trade/ops/shared/dal/sql/wfOrder.xml" />     
    </mappers>   
</configuration>

3.log4j.properties 配置apache

### set log levels ###
log4j.rootLogger = ERROR , C 

# MyBatis logging configuration...   com.wuage.trade.engine.bops.dal.dao   打印日誌的目錄
log4j.logger.com.wuage.trade.engine.bops.dal.dao=DEBUG

### console ###
log4j.appender.C = org.apache.log4j.ConsoleAppender
log4j.appender.C.Target = System.out
log4j.appender.C.layout = org.apache.log4j.PatternLayout
log4j.appender.C.layout.ConversionPattern = [%p] [%-d{yyyy-MM-dd HH:mm:ss}] %C.%M(%L) | %m%n

4.工具類bash

public class MyBatisUtil {
    private final static SqlSessionFactory sqlSessionFactory;
    static {
        //配置文件
        String resource = "testConfig/mybatis-config.xml";
        Reader reader = null;
        try {
            reader = Resources.getResourceAsReader(resource);
        } catch (IOException e) {
            System.out.println(e.getMessage());

        }
        sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader);
    }

    public static SqlSession getSqlSession() {
        //true 自動提交   false 手動提交
        SqlSession sqlSession=sqlSessionFactory.openSession(true);
        return sqlSession;
    }
 
}

5.測試用例mybatis

public class WfOrderTest {
    
    SqlSession sqlSession;
    
    @Before
    public void init(){
        sqlSession=MyBatisUtil.getSqlSession();
    }
    @Test
    public void insertTest(){
        WfOrderDAO dao=sqlSession.getMapper(WfOrderDAO.class);
        WfOrder order=new WfOrder();
        order.setBizId(1L);
        dao.insert(order);
    }
    
    @After
    public void destory(){
        sqlSession.close();
    }
    
}
相關文章
相關標籤/搜索