1、什么是MyBatis?
MyBatis是一个半ORM框架(对象关系映射)。---》Hibernate全ORM框架 ---》基于JDBC封装的框架 专注于SQL语句,不用关心JDBC操作的其他流程
2、MyBatis有什么优点
- 基于SQL语句的编程,相对来说会更加的灵活
- 和JDBC相比,减少了50%以上的代码量
- 可以很好的和各种数据库兼容
- 能够和Spring很好的兼容
- 提供了非常灵活的标签,动态SQL语句
3、MyBatis有哪些缺点
- SQL语句的编程工作量大
- SQL语句和具体的数据库的依赖很大,导致数据库的移植性很差,不能够随意的切换数据库
4、#和$的区别
- #{}是预编译处理,在MyBatis处理#{}的时候会替换为?,然后调用PreparedStatement的set方法来对? 赋值
- ${}是在MyBatis处理的时候就会直接替换,会有SQL注入的风险
5、属性名和字段名不一致的情况
- 查询的SQL语句我们通过别名处理
- 通过resultMap来设置字段和属性的映射关系