Mybatis环境搭架

这里我使用的编程工具是IDEA。

使用MyBatis框架进行数据库开发之前,需要先搭建MyBatis环境,MyBatis环境搭建主要有如下基本步骤.

(1)创建工程;

(2)引入相关依赖;

(3)数据库准备;

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

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

1.创建工程 

启动 启动IDEA开发工具,选择工具栏中的 开发工具,选择工具栏中的File->New->Project选项,弹出 选项,弹出New Project对话框,如图所示 对话框,如图所示

 2.引用相关依赖

由于本项目要连接数据库以及对程序进行测试,所以需要在项目的pom.xml文件中导入MySQL驱动包、 驱动包、Junit测试包、 测试包、MyBatis的 核心包等相关依赖。

<?xml version="1.0" encoding="UTF-8"?>
 <project xmlns="http://maven.apache.org/POM/4.0.0"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
 <modelVersion>4.0.0</modelVersion>
 <groupId>org.example</groupId>
 <artifactId>MyBatisDemo</artifactId>
 <version>1.0-SNAPSHOT</version>
 <properties>
 <maven.compiler.source>8</maven.compiler.source>
 <maven.compiler.target>8</maven.compiler.target>
 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
 </properties>
 <dependencies>
 <!--MyBatis核心包-->
 <dependency>
 <groupId>org.mybatis</groupId>
 <artifactId>mybatis</artifactId>
 <version>3.5.6</version>
 </dependency>
 <!--MySQL驱动包-->
 <dependency>
 <groupId>mysql</groupId>
 <artifactId>mysql-connector-java</artifactId>
 <version>8.0.30</version>
 </dependency>
    <!--JUnit测试包-->
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.13.2</version>
        <scope>test</scope>
    </dependency>
 </dependencies>
 <build>
    <!--由于IDEA不会自动编译src/main/resources下面的XML目录,所以在该目录下面的资源文件等编译进来-->
    <resources>
        <resource>
            <directory>src/main/resources</directory>
            <includes>
                <!--**表示递归匹配所有子目录层级-->
                <include>**/*.properties</include>
                <include>**/*.xml</include>
            </includes>
             <!--开启过滤功能-->
            <filtering>true</filtering>
        </resource>
    </resources>
 </build>
 </project>

 首次引依赖需要联网 IDEA默认集成的默认集成的Maven,所以在第一次引入依赖时,需要在联网状态下进行,且引入依赖需要较长时间,耐心等待到依赖引入完,所以在第一次引入依赖时,需要在联网状态下进行,且引入依赖需要较长时间,耐心等待到依赖引入完 成即可。

 3.创建数据库

注意:先进行“win+R”输入“services.msc”找到mysql点击启动。然后"win+R"输入cmd通过输入"mysql -h localhost -u root -p"和mysql密码。登录mysql !

在MySQL中创建一个名称为中创建一个名称为mybatis的数据库,具体的数据库,具体sql语句如下:

create database mybatis;

创建后可以通过show databases;查看数据库是否创建成功

4.连接信息配置文件

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

 mysql.driver=com.mysql.cj.jdbc.Driver
 mysql.url=jdbc:mysql://localhost:3306/mybatis?useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true
 mysql.username=root//表示你的数据库的用户名
 mysql.password=1234//表示你的数据库的登录密码

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="${mysql.driver}"/>
 <property name="url" value="${mysql.url}"/>
 <property name="username" value="${mysql.username}"/>
 <property name="mysql.password" value="${mysql.password}"/>
 </dataSource>
 </environment>
 </environments>
 </configuration>

入门项目

1.2.Mybatis入门程序 入门程

1.数据准备

在mybatis数据库中创建users表,并在users表中插入几条数据。

use mybatis;
 create table users(
 uid int primary key auto_increment,
 uname varchar(20) not null,
 uage int not null
 );
 insert into users(uid,uname,uage) values(null,'张三',20),(null,'李四',18);//这个数据库的代码是表示id自动递增

2.创建 创建POJO实体

 在项目的src/main/java目录下创建 目录下创建com.itheima.pojo包,在om.itheima.pojo包下创建 包下创建User类,该类用于封装User对象的属性。

// 声明该Java类所在的包为com.itheima.pojo
// 包用于组织和管理类,避免类名冲突,有助于代码的模块化和可维护性
// 通常pojo(Plain Old Java Object)包用于存放简单的Java对象类,主要用于封装数据
package com.itheima.pojo;

// 定义一个公共的类User,代表这是一个表示用户信息的类
// public关键字表示该类可以被其他包中的类访问
public class User {

    // 以下是User类的成员变量,也称为属性或字段
    // private关键字表示这些变量是私有的,只能在User类内部访问
    // 这样可以保证数据的安全性和封装性
    // uid是一个整数类型的变量,用于存储用户的唯一标识
    private int uid;
    // uname是一个字符串类型的变量,用于存储用户的姓名
    private String uname;
    // uage是一个整数类型的变量,用于存储用户的年龄
    private int uage;

    // 访问器方法(Getter),用于获取成员变量uid的值
    public int getUid() {
        return uid;
    }

    // 修改器方法(Setter),用于设置成员变量uid的值
    // this关键字用于区分局部变量和成员变量,表示当前对象的成员变量
    public void setUid(int uid) {
        this.uid = uid;
    }

    // 访问器方法(Getter),用于获取成员变量uname的值
    public String getUname() {
        return uname;
    }

    // 修改器方法(Setter),用于设置成员变量uname的值
    public void setUname(String uname) {
        this.uname = uname;
    }

    // 访问器方法(Getter),用于获取成员变量uage的值
    public int getUage() {
        return uage;
    }

    // 修改器方法(Setter),用于设置成员变量uage的值
    public void setUage(int uage) {
        this.uage = uage;
    }

    // @Override是一个注解,告诉编译器这是对父类中toString()方法的重写
    // toString()方法是Object类的一个方法,所有Java类都继承自Object类
    // 重写该方法是为了提供一个更具可读性的字符串表示形式,方便调试或打印对象
    @Override
    public String toString() {
        return "User{" +
                "uid=" + uid +
                ", uname='" + uname + '\'' +
                ", uage=" + uage +
                '}';
    }
}

3.创建映射文件 创建映射文件UserMapper.xml

在项目的src/main/resources目录下创建一个文件夹,在mapper文件夹下创建映射文件UserMapper.xml,该文件主要用于实现 SQL语句和Java对象之间的映射、使SQL语句查询出来的关系型数据能够被封装成Java对象。

<?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为映射的根节点,namespace指定Dao接口的完整类名,mybatis会根据这个接口动态创建一个实现类去实现这个接口,而这个实现类是一个Mapper对象-->
 <mapper namespace="com.itheima.pojo.User">
 <!--id='接口中的方法名', parameterType='传入的参数类型', resultType='返回实体类对象,使用包.类名'   -->
 <select id="findById" parameterType="int" resultType="com.itheima.pojo.User">
 select * from users where uid=#{id}
 </select>
 </mapper>

4.修改 修改mybatis-config.xml配置文件 配置文件

<mappers>
 <mapper resource="mapper/UserMapper.xml"/>
 </mappers>

5.编写测试类 

注意

在 Java 项目中,尤其是使用 Maven 或 Gradle 等构建工具的项目,通常遵循标准的项目目录结构。一般来说,源代码会放在 src/main/java 目录下,而测试代码会放在 src/test/java 目录下。这种分离有助于将生产代码和测试代码区分开来,方便管理和维护。

package Test;
 import com.itheima.pojo.User;
 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 org.junit.Test;
 import java.io.IOException;
 import java.io.Reader;
 public class UserTest {
 @Test
 public void userFindByIdTest(){
 String resources="mybatis-config.xml";
 Reader reader=null;
 try {
 reader = Resources.getResourceAsReader(resources);
 } catch (IOException e) {
 throw new RuntimeException(e);
 }
 SqlSessionFactory sqlMapper= new SqlSessionFactoryBuilder().build(reader);
 SqlSession session= sqlMapper.openSession();
 User user = session.selectOne("findById", 1);
 System.out.println(user);
 session.commit();
 session.close();
 }
 }

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值