面向接口编程:接口的目的是用来抽象方法的,接口里面只是定义方法,最终的方法在实现类里面
目的:实现了层级的解耦
控制层
UserController
public class UserController{
@Autowired //依赖注入
private UserService userService;
}
业务层
UserService 接口
public interface UserService{
}
UserServiceImpl 实现类 //接口和实现类是实现关系
public class UserSerImpl implements UserService{
}
UserMapper 持久层
public interface UserMapper{//持久层的接口
public List<User> findAll();//这个方法表示要查询user表中的所有数据
数据库不认识findAll()方法,只认sql语句,所有要转化成sql,sql要去映射文件里写(xml)
}
编译mapper的映射文件 (resources=>mybatis=>mapper