搭建Mybatis框架环境

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 一、添加依赖mybatis依赖如果你使用的是 Maven等构建工具,你需要在项目的构建文件中添加对 MyBatis JAR 文件的依赖。打开项目的 pom.xml 文件,在其中添加依赖的配置。<dependencies> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.13</version> </dependency> <!-- 其他依赖 --></dependencies>mysql依赖在MySQL的依赖是通过

一、添加依赖

mybatis依赖

如果你使用的是 Maven等构建工具,你需要在项目的构建文件中添加对 MyBatis JAR 文件的依赖。

打开项目的 pom.xml 文件,在其中添加依赖的配置。

<dependencies>
  <dependency>
    <groupId>org.mybatis</groupId>
    <artifactId>mybatis</artifactId>
    <version>3.5.13</version>
  </dependency>
  <!-- 其他依赖 -->
</dependencies>

mysql依赖

在MySQL的依赖是通过使用相关的数据库驱动程序实现的。要在MyBatis中使用MySQL,您需要在项目的构建文件中添加MySQL驱动程序的依赖项。

打开项目的 pom.xml 文件,在其中添加依赖的配置。

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>8.0.23</version> 
  </dependency>

JUnit 5单元测试

JUnit 5是一个功能强大且灵活的单元测试框架,它提供了丰富的工具和API,使得编写和运行单元测试变得更简洁、可读性更好,并具有更好的扩展性和定制性。

打开项目的 pom.xml 文件,在其中添加依赖的配置。

<dependency>
  <groupId>org.junit.jupiter</groupId>
  <artifactId>junit-jupiter-api</artifactId>
  <version>5.7.2</version>
  <scope>test</scope>
</dependency>
<dependency>
  <groupId>org.junit.jupiter</groupId>
  <artifactId>junit-jupiter-engine</artifactId>
  <version>5.7.2</version> 
  <scope>test</scope>
</dependency>

Slf4j 依赖

使用 Slf4j 可以让你的应用程序与具体的日志实现库解耦,从而可以灵活地切换和配置不同的日志库,例如 Log4j、Logback等。

打开项目的 pom.xml 文件,在其中添加依赖的配置。

<dependency>
  <groupId>org.slf4j</groupId>
  <artifactId>slf4j-api</artifactId>
  <version>1.7.32</version> <!-- 替换为您想要使用的Slf4j版本 -->
</dependency>

Logback框架

1、logback-core:logback-core是Logback框架的核心组件,它提供了日志记录的基本功能和API。它实现了日志事件的处理和分发,以及日志的格式化和输出等核心功能。logback-core是一个独立的模块,可以与其他日志门面(如Slf4j)配合使用。

<dependency>
  <groupId>ch.qos.logback</groupId>
  <artifactId>logback-core</artifactId>
  <version>1.2.6</version> <!-- 替换为您想要使用的版本 -->
</dependency>

2、logback-classic:logback-classic是logback框架的经典实现,它扩展了logback-core,并提供了对Slf4j的支持。它使用Slf4j作为日志门面,并提供了与Slf4j的互操作性,可以无缝地与Slf4j集成。logback-classic还提供了更多的功能,如上下文(Context)管理、日志配置文件解析、配置自动重新加载等。

<dependency>
  <groupId>ch.qos.logback</groupId>
  <artifactId>logback-classic</artifactId>
  <version>1.2.6</version> <!-- 替换为您想要使用的Logback版本 -->
</dependency>

二、logback.xml配置文件

在main的资源resources目录下创建 logback.xml 文件

这是一个简单的logback.xml配置文件,将日志输出到控制台,将日志输出到文件。

<configuration>
  <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
    <encoder>
      <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
    </encoder>
  </appender>
  <appender name="FILE" class="ch.qos.logback.core.FileAppender">
    <file>logs/application.log</file>
    <encoder>
      <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
    </encoder>
  </appender>
  <root level="INFO">
    <appender-ref ref="CONSOLE"/>
    <appender-ref ref="FILE"/>
  </root>
</configuration>

三、Mapper.xml映射文件

MyBatis的映射文件用于定义数据库操作的SQL语句和映射关系,它的主要作用是将Java代码与SQL语句和数据库表之间进行映射,实现数据的持久化操作。

在Mapper XML文件中,您可以定义各种数据库操作,如查询、插入、更新、删除等。

在main的资源resources目录下创建 Mapper.xml文件

<!-- MyMapper.xml -->
<?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">
<!--Mapper 配置文件的命名空间被命名为 nameull-->
<mapper namespace="nameull">
    <!--id="idull":指定了该查询语句的唯一标识符,可以通过这个标识符在代码中进行调用-->
    <!--查询结果的每一行将会映射为一个 com.example.mybatis.pojo.User 类型的实例-->
    <select id="idull" resultType="com.example.mybatis.pojo.User">
      <!-- 查询所有-->
      select * from tb_user;
    </select>
</mapper>

0、idea连接数据库,

1、创建 com.example.mybatis.pojo 包 User 类,把创建表结构sql代码复制User类中;

2、创建 com.example.mybatis.mapper 包 Usermapper 类;

四、mybatis-config.xml配置文件

在main的资源resources目录下创建 mybatis-config.xml 文件

用于配置 MyBatis 的运行参数,以下是一个基本配置示例:

<configuration>
  <environments default="development">
    <environment id="development">
      <transactionManager type="JDBC"/>
      <dataSource type="POOLED">
        <!-- 配置您的数据库连接信息 -->
        <property name="driver" value="com.mysql.jdbc.Driver"/>
        <property name="url" value="jdbc:mysql://localhost:3306/数据库名"/>
        <property name="username" value="root"/>
        <property name="password" value="password"/>
      </dataSource>
    </environment>
  </environments>
  <mappers>
    <!-- 在这里添加您的数据访问接口 Mapper.xml映射文件 -->
    <mapper resource="MyMapper.xml"/>
  </mappers>
</configuration>

五、测试类

创建 com.example.mybatis.text 包 MyBatisText 类;

package com.example.mybatis.text;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import java.io.IOException;
import java.io.InputStream;
import java.util.List;
public class MyBatisTest {
    public static <User> void main(String[] args) {
        try {
            // 加载mybatis核心配置文件,获取SqlSessionFactory
            String resource = "mybatis-config.xml";
            InputStream inputStream = Resources.getResourceAsStream(resource);
            SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
            // 获取SqlSession对象
            SqlSession sqlSession = sqlSessionFactory.openSession();
            // 执行查询操作
            // nameull.idull,Mapper.xml映射文件(前面提过)
            List<User> userList = sqlSession.selectList("nameull.idull");
            for (User user : userList) {
                System.out.println(user);
            }
            // 关闭SqlSession
            sqlSession.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}


目录
相关文章
|
1天前
|
SQL Java 数据库连接
MyBatis 框架入门理论与实践
MyBatis 框架入门理论与实践
30 6
|
1天前
|
SQL 缓存 Java
【框架】MyBatis 框架重点解析
【框架】MyBatis 框架重点解析
6 0
|
1天前
|
SQL Java 数据库连接
【JavaEE】懒人的福音-MyBatis框架—复杂的操作-动态SQL(下)
【JavaEE】懒人的福音-MyBatis框架—复杂的操作-动态
5 0
|
1天前
|
SQL Java 数据库连接
【JavaEE】懒人的福音-MyBatis框架—复杂的操作-动态SQL(上)
【JavaEE】懒人的福音-MyBatis框架—复杂的操作-动态SQL
3 0
|
1天前
|
SQL Java 数据库连接
【JavaEE】懒人的福音-MyBatis框架—[单表]增删改查等常规操作(下)
【JavaEE】懒人的福音-MyBatis框架—[单表]增删改查等常规操作
6 0
|
1天前
|
SQL 前端开发 Java
【JavaEE】懒人的福音-MyBatis框架—[单表]增删改查等常规操作(上)
【JavaEE】懒人的福音-MyBatis框架—[单表]增删改查等常规操作
8 0
|
1天前
|
Java 数据库连接 数据库
【JavaEE】懒人的福音-MyBatis框架—介绍、搭建环境以及初步感受
【JavaEE】懒人的福音-MyBatis框架—介绍、搭建环境以及初步感受
5 0
|
1天前
|
XML Java 数据库连接
Java一分钟之MyBatis:持久层框架基础
【5月更文挑战第15天】MyBatis是Java的轻量级持久层框架,它分离SQL和Java代码,提供灵活的数据库操作。常见问题包括:XML配置文件未加载、忘记关闭SqlSession、接口方法与XML映射不一致、占位符使用错误、未配置ResultMap和事务管理不当。解决这些问题的关键在于正确配置映射文件、管理SqlSession、避免SQL注入、定义ResultMap以及确保事务边界。遵循最佳实践可优化MyBatis使用体验。
11 2
Java一分钟之MyBatis:持久层框架基础
|
1天前
|
SQL 缓存 Java
持久层框架MyBatis
MyBatis是一款优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集的操作。MyBatis可以使用简单的XML或注解进行配置和原始映射,将接口和Java的POJOs(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录。
24 1
|
1天前
|
SQL 缓存 Java