MyBatis框架的认识

文章目录


前言

写这个其实是当作自己的笔记,记录学习,如有雷同,也很正常


提示:以下是本篇文章正文内容,下面案例可供参考

一、框架是什么?

       软件框架是一种通用的、可复用的软件环境,它提供特定的功能,促进软件应用、产品和解决方案的开发工作。软件框架会包含支撑程序、编译器、代码、库、工具集以及API,它把所有这些部件汇集在一起,以支持项目或系统的开发。

        MyBatis 是Apache的一个开源项目iBatis,2010年这个项目由Apache Software Foundation迁移到了Google Code,并且改名为MyBatis ,2013年11月MyBatis又被迁移到Github。        MyBatis是一个优秀的持久层框架,它可以在实体类和SQL语句之间建立映射关系,是一种半自动化的ORM(Object/Relation Mapping,即对象关系映射)实现。MyBatis封装性要低于Hibernate,但它性能优越、简单易学,在互联网应用的开发中被广泛使用。

二、MyBatis框架的优势

MyBatis框架可以解决JDBC的劣势

JDBC都有哪些劣势?MyBatis是怎么解决的

首先, JDBC是Java程序实现数据访问的基础

  1. 数据库连接创建、释放频繁会造成系统资源浪费,从而影响系统性能。                      MyBatis解决:在SqlMapConfig.xml中配置数据链接池,使用连接池管理数据库链接。
  2. SQL语句在代码中硬编码,造成代码不易维护。在实际应用的开发中,SQL变化的可能性较大。在传统JDBC编程中,SQL变动需要改变Java代码,违反了开闭原则。                 MyBatis解决:MyBatis将SQL语句配置在MyBatis的映射文件中,实现了与Java代码的分离。
  3. 用PreparedStatement向占位符传参数存在硬编码,因为SQL语句的where条件不一定,可能多也可能少,修改SQL需要修改代码,造成系统不易维护。                                        MyBatis解决:MyBatis自动将Java对象映射至SQL语句,通过Statement中parameterType定义输入参数的类型。
  4. JDBC对结果集解析存在硬编码(查询列名),SQL变化导致解析代码变化,造成系统不易维护。                                                                                                                               MyBatis解决:MyBatis自动将SQL执行结果映射至Java对象,通过Statement中的resultType定义输出结果的类型。

        MyBatis是一个支持普通SQL查询、存储过程以及高级映射的持久层框架,它消除了几乎所有的JDBC代码和参数的手动设置以及对结果集的检索,使用简单的XML或注解进行配置和原始映射,将接口和Java的POJO映射成数据库中的记录,使得Java开发人员可以使用面向对象的编程思想来操作数据库。MyBatis框架是一个ORM(Object/Relation Mapping,即对象关系映射)框架。所谓的ORM就是一种为了解决面向对象与关系型数据库中数据类型不匹配的技术,它通过描述Java对象与数据库表之间的映射关系,自动将Java应用程序中的对象持久化到关系型数据库的表中。

       ORM框架的工作原理

三、MyBatis环境的搭建

基本步骤有 (1)创建工程;        

                   (2)引入相关依赖;        

                   (3)数据库准备;        

                   (4)编写数据库连接信息配置文件;        

                   (5)编写核心配置文件和映射文件。

1.创建工程

在IDEA中创建Maven工程

2.引入相关依赖

在项目的pom.xml文件中导入MySQL驱动包、Junit测试包、MyBatis的核心包等相关依赖。

例如

<dependencies>
     <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>8.0.11</version>
    </dependency>
</dependencies>

Maven提供了自动引入功能,只需要在pom.xml文件中说明引用的类型,版本等就行,Maven自动下载这些Jar文件,首次引入依赖需要联网(需要下载jar文件),等待引入依赖后会出现绿色的✔,如果自动引入依赖失败,刷新Maven后仍不成功就需要手动引入依赖。

手动导入jar

在项目上新建directory,lib,将用到的jar包复制进去,右击lib,选择Add As Library..-----Add to module-----Project Library,点击ok,将pom.xml的<dependencies></dependencies>连同它之间的代码删除。

3.数据库准备

省略

4.编写数据库连接信息配置文件

创建数据库连接信息配置文件:在项目的src/main/resources目录下创建数据库连接的配置文件,这里将其命名为db.properties,在该文件中配置数据库连接的参数。

driver=com.mysql.cj.jdbc.Driver
url=jdbc:mysql://localhost:3306/mybatis?serverTimezone=UTC&characterEncoding=utf8&useUnicode=true&useSSL=false
username=root
password=

5.编写核心配置文件和映射文件

创建MyBatis的核心配置文件:在项目的src/main/resources目录下创建MyBatis的核心配置文件,该文件主要用于项目的环境配置,如数据库连接相关配置等。核心配置文件可以随意命名,但通常将其命名为mybatis-config.xml。

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <properties resource="db.properties"/>
    <environments default="development">
        <environment id="development">
            <transactionManager type="JDBC"/>
            <dataSource type="POOLED">
                <property name="driver" value="${driver}"/>
                <property name="url" value="${url}"/>
                <property name="username" value="${username}"/>
                <property name="password" value="${password}"/>
            </dataSource>
        </environment>
    </environments>
</configuration>

总结

没啥总结

猜你喜欢

转载自blog.csdn.net/weixin_56342559/article/details/129891803
今日推荐