Mybatis基础总结-理论

  1. Mybatis是什么
    答: Mybatis是一个ORM的数据库持久化框架,Mybatis的是apache的一个开源项目iBatis,MyBatis前身就是【iBatis】。

  2. 什么叫数据库持久化
    答:持久化 = 数据持久化:就是将数据保存在磁盘【文档 +数据库】中,将对象和数据保存在数据库中

  3. 什么是ORM
    答:Object Relational Mapping - 对象关系映射,为了解决面向对象与面向关系不匹配问题
    有了ORM,我们查询数据库中的数据会自动转成java中对象,不需要做对象转换了
    以一定的映射方式,把实体模型【面向对象】和数据库关系盘【面向关系】进行映射

  4. ORM框架映射方式
    答:SQL映射/半映射,需要写SQL语句。

  5. 常见的ORM持久化框架有哪些
    答:Hibernate,MyBatis

  6. SQL映射器Mapper的好处
    答:如果使用了Mapper映射器之后,只需要写接口,不需要写实现,框架自动生成

  7. 如何查看MyBatis运行日志
    答:log4j,需要统一规范。1.导入jar包,2.在资源文件夹中编写属性文件log4j.properties.

  8. 面试题

  9. Mybatis和Jdbc联系和区别;
    答:JDBC是Java提供的一个操作数据库的API; MyBatis是一个持久层ORM框架,底层是对JDBC的封装。
    MyBatis对JDBC操作数据库做了一系列的优化:
    (1) mybatis使用已有的连接池管理,避免浪费资源,提高程序可靠性。
    (2) mybatis提供插件自动生成DAO层代码,提高编码效率和准确性。
    (3) mybatis 提供了一级和二级缓存,提高了程序性能。
    (4) mybatis使用动态SQL语句,提高了SQL维护。(此优势是基于XML配置)
    (5) mybatis对数据库操作结果进行自动映射
    JDBC:
    1)优点:简单易学,上手快,非常灵活构建SQL,效率高
    2)缺点:代码繁琐,难以写出高质量的代码(例如:资源的释放,SQL注入安全性等)
    开发者既要写业务逻辑,又要写对象的创建和销毁,必须管底层具体数据库的语法
    (例如:分页)。
    3) 适合于超大批量数据的操作,速度快

  10. #与$区别;
    答:#{ }
    1.相当于JDBC中的PreparedStatement ,是经过预编译的,安全
    2.会为参数自动拼接引号
    3.执行sql效果
    ${ }
    1.相当于JDBC中的Statement ,未经过预编译,非安全,存在sql注入危险
    2.并不会给参数自动拼接引号
    3.执行sql效果

发布了30 篇原创文章 · 获赞 1 · 访问量 857

猜你喜欢

转载自blog.csdn.net/weixin_45061669/article/details/105422189
今日推荐