Java高频面试知识点-2

1. Mybatis 最佳实践中,通常一个Xml映射文件,都会写一个Dao接口与之对应,请问,这个Dao接口的工作原理是什么?Dao接口里的方法,参数不同时,方法能重载吗?

  • 回答

      Dao接口,就是人们常说的Mapper接口,接口的全限名,就是映射文件中的namespace的值。
      接口的方法名,就是映射文件中MappedStatement的id值,接口方法内的参数,
      就是传递给sql的参数。Mapper接口是没有实现类的,
      当调用接口方法时,接口全限名+方法名拼接字符串作为key值,可唯一定位一个MappedStatement。
    
  • 细节

      举例:com.mybatis3.mappers.StudentDao.findStudentById,可以唯一找到
      namespace为com.mybatis3.mappers.StudentDao下面id = findStudentById的MappedStatement。
      在Mybatis中,每一个