第一章 MyBatis入门初体验

本文介绍了MyBatis作为一款优秀的持久层框架,如何通过XML或注解简化SQL操作,避免JDBC的繁琐步骤,提高开发效率。MyBatis允许自定义SQL,支持存储过程,并通过数据库连接池优化资源使用,同时对比了JDBC和Hibernate的优缺点。此外,还展示了搭建MyBatis环境的步骤,包括环境配置、工程创建和核心配置文件的建立。
摘要由CSDN通过智能技术生成

一、MyBatis简介

        01、使用JDBC编程

       

        JDBC操作数据库的流程: 

        (1)主备数据库连接参数

      (2)连接数据库

      (3)编译SQL

      (4)设计SQL参数

      (5)执行SQL获取结果

      (6)遍历结果集,封装数据到JavaBean

      (7)关闭资源

        使用JDBC的缺陷

        1.代码比较多,开发效率低

        2.需要关注Connection,Statement,ResultSet对象创建和销毁

        3.对ResultSet查询的结果,需要自己封装为List

        4.重复的代码比较多些

        5.业务代码和数据库的操作混在一起

        我们需要如何简化操作?

  • 减少重复代码
  • 松开Java代码与配置间的耦合
  • 避免频繁打开和创建数据库链接,杜绝资源浪费
  • 自动化工作

        MyBatis框架为我们提供了解决思路

  1. 将配置丢入XML文件,与业务代码分离
  2. 通过配置文件白那些SQL,我们仅需要关注SQL语句,其余重复繁琐操作由框架代劳。
  3. 通过数据库连接池的使用减少资源开销

        02、MyBatis历史

        MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。

        MyBatis是半自动ORM框架

        半自动:Mybatis将 SQL的定义工作独立出来,让用户自定义,而 SQL的解析,执行等大量工作交由 Mybatis处理执行。

        ORM:Object Relational Mapping——对象关系映射,是一种程序设计技术,用于实现面向对象编程语言里不同类型系统的数据之间的转换。ORM框架提供了实体类与数据表的映射关系,通过映射文件的配置,实现对象的持久化。

        03、MyBatis特性

  1. MyBatis 是支持定制化 SQL、存储过程以及高级映射的优秀的持久层框架

  2. MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集

  3. MyBatis可以使用简单的XML或注解用于配置和原始映射,将接口和Java的POJO(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录

  4. MyBatis 是一个 半自动的ORM(Object Relation Mapping)框架

        04、MyBatis下载

     

        05、和其他持久层技术对比

        JDBC:
        •SQL 夹杂在Java代码中耦合度高
        •代码重复度高,冗余且效率低下
        •维护不易且实际开发需求中 SQL 有变化,频繁修改的情况多见

        Hibernate:
        •操作简便,开发效率高
        •全自动框架导致灵活性低下,导致复杂SQL处理需绕开框架,且大量字段的 POJO 进行部分映射时比较困难
        •反射操作多,数据库性能下降

        MyBatis:
        •轻量级,性能出色
        •SQL 和 Java 编码分开,功能边界清晰。Java代码专注业务、SQL语句专注数据
        •开发效率稍逊于HIbernate,但是完全能够接受

二、搭建MyBatis环境

        01、开发环境及所需jar包

        MyBatis所需环境:
        Eclipse
        MySQL版本:MySQL 8
        MyBatis版本:MyBatis 3.5.8

        MyBatis安装包解压,得到如图目录: 

        其余开发中使用的jar包:

        
        用于单元测试的jar包,其中junit依赖hamcrest-core包,而hamcrest-library包为hamcrest-core包做补充。


                    mysql8驱动包



                               mybatis包所依赖的包


        02、创建工程并导入jar包

        第一步:创建JavaWeb工程

 

         第二步:导入jar

选中所有jar包右键-build path...-add to Build Path

 

        03、创建MyBatis核心配置文件

        第一步:新建与src平级的文件夹resource,用来存放配置文件

        

        第二步:新建mybatis-config.xml文件(文件名可自定义,大部分命名为:mybatis-config

 

        04、创建log4j配置文件

        第一步:在resources目录下创建名为 log4j.properties文件
        第二步:在 log4j.properties文件配置日志输出的方式

# 声明日志的输出级别及输出方式
log4j.rootLogger=DEBUG,stdout
# MyBatis logging configuration...
log4j.logger.org.mybatis.example.BlogMapper=TRACE
# Console output...
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
# 定义日志的打印格式  %t 表示线程名称  %5p 日志级别 %msg日志信息
log4j.appender.stdout.layout.ConversionPattern=[%t] %5p - %msg \:%m%n

三、第一个MyBatis程序

        01、案例背景

        

        02、案例实施

 

        03、单元测试

四、MyBatis核心配置文件

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值