mybatis有两种访问mapper对象去操作数据的方式。
1.新建mapper接口,在里面定义一些操作数据库的方法,不用实现,加上@Repository告诉mybatis这是个map层,例如
@Repository
public interface MainMap {
public List<User> getUserInfo();
}
2.获取SqlSession,通过SqlSession执行增删改查的方法。例如:
@Autowired
private SqlSessionFactoryBean sqlSessionFactoryBean;
public List<User> getUserInfo() {
List<User> result=null;
try {
SqlSessionFactory sqlSessionFactory=sqlSessionFactoryBean.getObject();
SqlSession sqlSession=sqlSessionFactory.openSession();
result=sqlSession.selectList("com.hbut.inspiration.map.MainMap.getUserInfo",null);
}
}
在这里有我们来分析第一种方式,每个人初识mybatis的时候是不是都有一个疑惑就是,map定义一个接口不用去实现,然后注入到service层就可以处理业务逻辑了,其实不然,下面我来解析:
当我们在service层注入一个map接口例如