zoukankan      html  css  js  c++  java
  • MyBatis学习(一)初识MyBatis

    一、MyBatis简介

      MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis,是一个基于Java的持久层框架。

    • 持久层: 可以将业务数据存储到磁盘,具备长期存储能力,只要磁盘不损坏,在断电或者其他情况下,重新开启系统仍然可以读取到这些数据。
    • 优点: 可以使用巨大的磁盘空间存储相当量的数据,并且很廉价
    • 缺点(相对于内存而言)

    二、为什么使用 MyBatis

    痛点

      在我们传统的 JDBC 中,我们除了需要自己提供 SQL 外,还必须操作 Connection、Statment、ResultSet,不仅如此,为了访问不同的表,不同字段的数据,我们需要些很多雷同模板化的代码,闲的繁琐又枯燥。

    使用MyBatis的好处

      使用了 MyBatis 之后,只需要提供 SQL 语句就好了,其余的诸如:建立连接、操作 Statment、ResultSet,处理 JDBC 相关异常等等都可以交给 MyBatis 去处理,我们的关注点于是可以就此集中在 SQL 语句上,关注在增删改查这些操作层面上。

      并且 MyBatis 支持使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。

    三、基本原理

    • 应用程序找 MyBatis 要数据
    • MyBatis 从数据库中找来数据
      1. 通过 mybatis-config.xml 定位数据库
      2. 通过 User.xml 执行对应的 sql 语句
      3. 基于 User.xml 把返回的数据库封装在 User对象中
      4. 把多个 User对象装载一个 User 集合中
    • 返回一个 User  集合

    PS:此例子在下一节进行详细分析

     

    参考资料:

  • 相关阅读:
    redis之(十二)redis数据的持久化
    redis之(十一)redis实现缓存的功能
    redis之(十)redis实现消息中间件的功能
    redis之(九)redis的事务机制
    SQL关于IN和EXISTS的用法和区别的比较
    mysql explain extra理解
    mysql explain rows理解
    mysql explain中key_len值的说明
    redis常见重要性能指标数据分析和相关问题解决方案
    java.lang.UnsupportedOperationException解决方法!!!
  • 原文地址:https://www.cnblogs.com/riches/p/11642014.html
Copyright © 2011-2022 走看看