欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Mybatis(一)mybatis简介及配置文件

程序员文章站 2024-01-18 15:12:07
前言:作为一名在未来要从事计算机工作的在校学生,在学习任何一种知识或技术之前,我都需要先明白三个问题:为什么要学习它它有什么作用学完后对我有什么提升弄清楚以上问题后,我认为学习的效果会大大提升。1、Mybatis简介  按照mybatis官方文档的定义,MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 J...

前言:作为一名在未来要从事计算机工作的在校学生,在学习任何一种知识或技术之前,我认为都需要先明白三个问题:

  1. 为什么要学习它
  2. 它有什么作用
  3. 学完后对我有什么提升

弄清楚以上问题后,我们学习的效果会大大提升。

1、Mybatis简介

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

2、为什么要使用Mybatis

  在使用传统的JDBC时有没有感觉到一个问题——在对数据库进行增删改查的过程中,对数据库的任何一个操作我们都需要创建一个单独的方法,频繁的进行相关对象的创建和关闭;并且在方法的内部,众多代码都是重复的,只有SQL语句和执行的方法略有不同;而使用Mybatis就可以解决这种问题。

3、Mybatis提供的功能

  • 提供了创建Connection、PreparedStatement、Statement、ResultSet等对象的功能,不需要开发人员创建
  • 提供了执行SQL语句的功能
  • 提供了遍历SQL结果,将结果集转化为Java对象、List集合的功能
  • 提供了关闭资源的功能

  通过Mybatis提供的功能,开发人员只需要集中精力写SQL语句,根据相关类的调用,让Mybatis对SQL语句进行处理,我们可以得到含有数据信息的List集合或Java对象。

4、使用前准备工作

  • 在maven项目中的pom.xml文件中加入Mybatis依赖
<!--Mybatis依赖-->
<dependency>
    <groupId>org.mybatis</groupId>
    <artifactId>mybatis</artifactId>
    <version>3.5.5</version>
</dependency>
  • Mybatis主配置文件
<?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>
    <!--控制Mybatis-->
    <settings>
        <!--开启输出日志功能-->
        <setting name="logImpl" value="STDOUT_LOGGING"/>
    </settings>

    <!--指定所使用的数据库-->
    <environments default="dbTest">

        <!--一个environment代表一个数据库-->
        <environment id="dbTest">
            <transactionManager type="JDBC"/>
            <!--POOLED为连接池-->
            <dataSource type="POOLED">
                <!--指定数据库驱动-->
                <property name="driver" value="com.mysql.jdbc.Driver"/>
                <!--指定URL-->
                <property name="url" value="jdbc:mysql://localhost:3306/user_test"/>
                <!--数据库用户名-->
                <property name="username" value="root"/>
                <!--密码-->
                <property name="password" value="root"/>
            </dataSource>
        </environment>

    </environments>

    <!--指定Sql映射文件(SQL Mapper)-->
    <mappers>
        <mapper resource="映射文件的相对路径"/>
    </mappers>
</configuration>
  • SQL映射文件
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
        <!--约束文件,检查该文件格式是否符合Mybatis语法-->

<!--namespace指定接口-->
<mapper namespace="接口文件全名">

    <select id="接口中方法名" resultType="返回值的数据类型">
        <!-- 查询SQL语句 -->
    </select>

    <insert id="接口中方法名">
        <!-- 插入SQL语句 -->
    </insert>

    <update id="接口中方法名">
        <!-- 更新SQL语句 -->
    </update>

    <delete id="接口中方法名">
       <!-- 删除SQL语句 --> 
    </delete>
</mapper>

  SQL映射文件中的接口及接口中的方法会在后续的文章中进行解释,该分栏持续更新中…

本文地址:https://blog.csdn.net/ccccc_chuang/article/details/107202827