1、接口调用目的
接口调用为了简化映射文件中价增删改查方法的编写调用,也是为避免path字符串赋值书写的偶然错误,提倡采用接口写法
2、创建接口java文件
如:public interface DeptMapper {
List<Dept> selectAll();
void insert(Dept dept);
void delete(Integer deptno);
void update(Dept dept);
Dept selectByNo(Integer deptno);
} //此中的方法定义均是原映射文件中有的,只不过在接口中被定义,测试类中调用起来更为方便
原mybatis.xml的映射代码:
<mapper resource="com/yc/mybatis/dao/DeptMapper.xml"/>
<mapper resource="com/yc/mybatis/dao/EmpMapper.xml"/>
改
如: <mapper class="com.yc.mybatis.dao.DeptMapper"></mapper>
<mapper class="com.yc.mybatis.dao.EmpMapper"></mapper>
还有一种方法较以上方法可一次性映射所有接口,利用包标签,不需要一个个接口去书写
<package name="com.yc.mybatis.dao"></package>
//name为接口文件所在包名
测试接口代码
public class DeptMapperTest {
private SqlSession session;
@Before//before部分意思是先执行这部分在执行test部分
public void before() throws IOException
{
String resource = "mybatis.xml";
InputStream inputStream = Resources.getResourceAsStream(resource);
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
session=sqlSessionFactory.openSession();
}
@Test//测试代码
public void testRelaSelect2()
{
DeptMapper deptmapper=session.getMapper(DeptMapper.class);//将接口调用的固定写法
List<Dept> list=deptmapper.selectAll();
}