mybatis.xml
EmployeeMapper.xml
select id,name,job
from t_employee
where mgr=#{pid}
select id,name,job
from t_employee
where id=#{id}
MyBatisUtil.java
package com.monkey1024.util;
import java.io.IOException;
import java.io.InputStream;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
/*
* DCL鐨勫崟渚嬫ā寮�
*/
public class MyBatisUtil {
// 鏃犻渶灏嗘瀯閫犳柟娉曠鏈夊寲锛屽洜涓鸿繖閲岄潰鍙淇濊瘉鍒涘缓涓�涓猄qlSessionFactory鐨勫璞�
// private MyBatisUtil()
private static volatile SqlSessionFactory sqlSessionFactory;
public static SqlSession getSqlSession() {
try {
if (sqlSessionFactory == null) {
// 璇诲彇涓婚厤缃枃浠�
InputStream input = Resources.getResourceAsStream("mybatis.xml");
synchronized (MyBatisUtil.class) {
if (sqlSessionFactory == null) {
sqlSessionFactory = new SqlSessionFactoryBuilder().build(input);
}
}
}
} catch (IOException e) {
e.printStackTrace();
}
//mybatis鑷姩鎻愪氦浜嬪姟
// return sqlSessionFactory.openSession(true);
return sqlSessionFactory.openSession();
}
}
EmployeeDao.java
package com.monkey1024.dao;
import java.util.List;
import com.monkey1024.bean.Employee;
public interface EmployeeDao {
List selectChildrenByPid(int mgr);
List selectEmployeeByPid(int id);
}
EmployeeTest01.java
package com.monkey1024.test;
import java.util.List;
import org.apache.ibatis.session.SqlSession;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import com.monkey1024.bean.Employee;
import com.monkey1024.dao.EmployeeDao;
import com.monkey1024.util.MyBatisUtil;
public class EmployeeTest01 {
private SqlSession sqlSession;
private EmployeeDao employeeDao;
@Before
public void init(){
sqlSession = MyBatisUtil.getSqlSession();
employeeDao = sqlSession.getMapper(EmployeeDao.class);
}
@After
public void closeSession(){
if(sqlSession!=null){
sqlSession.close();
}
}
@Test
public void selectChildrenByPid(){
List employees = employeeDao.selectChildrenByPid(1002);
employees.forEach(e->{
System.out.println(e);
});
}
@Test
public void selectEmployeeByPid(){
List employees = employeeDao.selectEmployeeByPid(1002);
employees.forEach(e->{
System.out.println(e);
});
}
}