zoukankan      html  css  js  c++  java
  • MyBatis简介

    学习过的持久层框架:DBUtils , Hibernate

    Mybatis就是类似于hibernateorm持久层框架。

    为什么学Mybatis?

    1. 目前最主流的持久层框架为hibernatemybatis,而且国内目前情况使用Mybatis的公司比hibernate要多。
    2. Hibernate学习门槛不低,要精通门槛更高。门槛高在怎么设计O/R映射,在性能和对象模型之间如何权衡取得平衡,以及怎样用好Hibernate缓存与数据加载策略方面需要你的经验和能力都很强才行。国内目前前的情况精通hibernate技术大牛非常少。
    3. sql优化方面,Hibernate的查询会将表中的所有字段查询出来,这一点会有性能消耗。当然了,Hibernate也可以自己写SQL来指定需要查询的字段,但这样就破坏了Hibernate开发的简洁性。说得更深入一些,如果有个查询要关联多张表,比如5张表,10张表时,而且,我们要取的字段只是其中几张表的部分字段。这时用hibernate时就会显得非常力不从心。就算用hibernatesqlquery,后续的维护工作也会让人发狂。

     Mybatis介绍

    MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis 201311月迁移到Github

    Mybatis是面向sql的持久层框架,他封装了jdbc访问数据库的过程,我们开发,只需专注于sql语句本身的拼装,其它复杂的过程全部可以交给mybatis去完成。

    JDBC编程回顾与存在的问题分析

    1.1 开发步骤:

    1. 导入数据脚本,在课前资料中有
    2. 创建工程,导入mysql jar
    3. 编码

    1.2 Jdbc访问数据库的过程:

    1. //加载数据库驱动
    2. //创建数据库连接
    3. //创建statement
    4. //设置sql语句
    5. //设置查询参数
    6. //执行查询,得到ResultSet
    7. //解析结果集ResultSet
    8. //释放资源

    1.3 Jdbc存在的问题:

    1. 频繁创建和打开、关闭数据连接,太消耗资源
    2. Sql语句存在硬编码,不利于维护
    3. Sql参数设置硬编码,不利于维护
    4. 结果集获取与遍历复杂,存在硬编码,不利于维护,期望能够查询后返回一个java对象

        

  • 相关阅读:
    【mysql】添加对emoji的支持
    【mysql】关于innodb中MVCC的一些理解
    【mysql】关于硬件方面的一些优化
    关于php中的spl_autoload_register
    【mysql】高可用集群之MMM
    【mysql】数据库使用的一些规范
    使用sysbench进行压力测试
    【mysql】关于乐观锁
    【linux】spinlock 的实现
    【mysql】关于悲观锁
  • 原文地址:https://www.cnblogs.com/tanlei-sxs/p/9855968.html
Copyright © 2011-2022 走看看