国王陛下万万岁

导航

 

MyBatis入门1创建了一个Dao接口类和一个mybatis的xml格式mapper文件,以及mybatis的主配置文件。

在运行测试类的时候,发现没有Dao接口类也能查询数据库,这是因为没有使用以下maybatis的方法去获取mapper。

sqlSession.getMapper();

 

总之,这个Dao接口没有起到作用,可以删除。

下面代码模拟mybatis使用实现类调用dao接口的方法去查询数据库

com/oxygen/dao/impl/StudentDaoImpl.java

package com.oxygen.dao.impl;

import com.oxygen.dao.StudentDao;
import com.oxygen.entity.Student;
import com.oxygen.utils.MybatisUtil;
import org.apache.ibatis.session.SqlSession;

import java.util.List;

public class StudentDaoImpl implements StudentDao {
    @Override
    public List<Student> selectStudentsAll() {
        SqlSession sqlSession= MybatisUtil.getSqlSession();
        String sqlId="com.oxygen.dao.StudentDao.selectStudentsAll";
        List<Student> result=sqlSession.selectList(sqlId);
        result.forEach(System.out::println);
        sqlSession.close();
        return result;
    }

    @Override
    public int insertStudent(Student student) {
        return 0;
    }
}

 

测试类

src/test/java/TestStudentImpl.java

import com.oxygen.dao.StudentDao;
import com.oxygen.dao.impl.StudentDaoImpl;
import com.oxygen.entity.Student;
import org.junit.Test;

import java.util.List;

public class TestStudentImpl {

    @Test
    public void testStudent(){
        StudentDao dao=new StudentDaoImpl();
        List<Student> students=dao.selectStudentsAll();
        for(Student stu:students){
            System.out.println("stu->"+stu);
        }
    }
}

 

posted on 2022-09-12 17:47  国王陛下万万岁  阅读(20)  评论(0编辑  收藏  举报