搭建MyBatis开发环境及基本的CURD介绍

关于搭建MyBatis开发环境以及基本的CURD介绍,我们需要以下几步:

安装 Java SE环境

首先需要在本地安装好Java SE环境,通常使用官网提供的JDK安装包进行安装,安装完毕之后可以使用 java -version 命令查看安装是否成功。

安装和配置 Maven

Maven是一个Java项目管理工具,可以方便地管理Java项目中的依赖关系和构建过程。安装Maven之前需要先安装好Java环境。

  1. 下载Maven,可以在官网下载最新的稳定版本。

  2. 解压Maven安装包到本地任意目录。

  3. 配置系统环境变量

bash
# MAVEN_HOME为Maven解压后的目录
export MAVEN_HOME=/path/to/apache-maven-3.8.3
export PATH=${PATH}:${MAVEN_HOME}/bin

配置完成之后,可以在命令行执行 mvn -version 验证是否安装成功。

安装和配置 MySQL

MyBatis是一款开源的ORM框架,常常用于和关系型数据库进行交互。因此,在使用MyBatis的过程中,需要先搭建好本地的数据库环境。这里以MySQL为例介绍:

  1. 下载MySQL,可以在官网下载最新的稳定版本。

  2. 安装MySQL并启动服务。

  3. 创建一个数据库和表,可以使用以下命令:

sql
CREATE DATABASE mybatis_demo;
USE mybatis_demo;
CREATE TABLE user (
id INT NOT NULL AUTO_INCREMENT,
name VARCHAR(20) NOT NULL,
age INT NOT NULL,
PRIMARY KEY ( id )
);

添加MyBatis依赖和配置

  1. 在pom.xml文件中添加MyBatis的依赖:

xml
<dependencies>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.8</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.26</version>
</dependency>
</dependencies>

  1. 在resources目录下创建一个名为mybatis-config.xml的文件,并添加以下内容:

```xml








```

其中,dataSource标签内的driver、url、username、password是连接本地数据库的必要参数。

  1. 在resources目录下创建一个名为UserMapper.xml的文件,并添加以下内容:

```xml

   <resultMap id="BaseResultMap" type="com.example.demo.entity.User">
       <id column="id" property="id" jdbcType="INTEGER"/>
       <result column="name" property="name" jdbcType="VARCHAR"/>
       <result column="age" property="age" jdbcType="INTEGER"/>
   </resultMap>

   <sql id="Base_Column_List">
       id, name, age
   </sql>

   <select id="getUserById" parameterType="int" resultMap="BaseResultMap">
       select
       <include refid="Base_Column_List"/>
       from user
       where id = #{id,jdbcType=INTEGER}
   </select>

   <select id="getAllUser" resultMap="BaseResultMap">
       select
       <include refid="Base_Column_List"/>
       from user
   </select>

   <insert id="addUser" parameterType="com.example.demo.entity.User">
       insert into user (name, age)
       values (#{name,jdbcType=VARCHAR}, #{age,jdbcType=INTEGER})
   </insert>

   <update id="updateUser" parameterType="com.example.demo.entity.User">
       update user
       set name = #{name,jdbcType=VARCHAR},
           age = #{age,jdbcType=INTEGER}
       where id = #{id,jdbcType=INTEGER}
   </update>

   <delete id="deleteUserById" parameterType="int">
       delete from user
       where id = #{id,jdbcType=INTEGER}
   </delete>

```

这里是一个简单的UserMapper,定义了几个CURD方法并定义了部分SQL语句。

代码示例

代码参考示例:(其中pom.xml的内容省略)

package com.example.demo;

import com.example.demo.dao.UserMapper;
import com.example.demo.entity.User;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

import java.io.InputStream;
import java.util.List;

public class Main {

    public static void main(String[] args) {
        String resource = "mybatis-config.xml";
        InputStream inputStream = Main.class.getClassLoader().getResourceAsStream(resource);
        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
        SqlSession sqlSession = sqlSessionFactory.openSession();

        try {
            UserMapper userMapper = sqlSession.getMapper(UserMapper.class);

            // 查询单条数据
            int userId = 1;
            User user = userMapper.getUserById(userId);
            System.out.println(user);

            // 查询所有数据
            List<User> userList = userMapper.getAllUser();
            System.out.println(userList);

            // 新增一条数据
            User newUser = new User();
            newUser.setName("Test User");
            newUser.setAge(27);
            userMapper.addUser(newUser);
            sqlSession.commit();

            // 修改一条数据
            User updateUser = new User();
            updateUser.setId(1);
            updateUser.setName("Updated User");
            updateUser.setAge(30);
            userMapper.updateUser(updateUser);
            sqlSession.commit();

            // 删除一条数据
            userMapper.deleteUserById(1);
            sqlSession.commit();

        } finally {
            sqlSession.close();
        }
    }
}

其中,我们首先读取mybatis-config.xml配置文件,然后根据配置文件创建SqlSessionFactory,最后根据SqlSessionFactory创建SqlSession实例,并通过SqlSession实例获取UserMapper实例,从而进行CURD操作。

以上就是搭建MyBatis开发环境及基本的CURD介绍的完整攻略。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:搭建MyBatis开发环境及基本的CURD介绍 - Python技术站

(0)
上一篇 2023年6月2日
下一篇 2023年6月2日

相关文章

  • IDEA2020.1构建Spring5.2.x源码的方法

    那我这里就来详细讲解一下“IDEA2020.1构建Spring5.2.x源码的方法”的完整攻略。主要步骤如下: 步骤一:下载源码 首先,我们需要下载Spring5.2.x的源码。可以从Spring官方网站上下载,也可以从GitHub上下载。这里以在GitHub上下载为例,具体步骤如下: 打开Spring的GitHub仓库链接:https://github.c…

    Java 2023年5月19日
    00
  • 基于java中两个对象属性的比较

    基于Java中两个对象属性的比较 在Java中,可以很方便地比较两个对象的属性。此外,我们还可以实现自定义的类比较规则,以满足更复杂的条件。 对象属性的比较 Java中的比较通常使用equals()方法。这个方法可以用来比较两个对象的所有属性。 示例代码: public class Person { private String name; private …

    Java 2023年5月26日
    00
  • 如何把char数组转换成String

    将char数组转换成String通常可以使用String类的构造函数方法或valueOf()方法。 使用String类的构造函数方法 示例1: char[] charArray = {‘H’, ‘e’, ‘l’, ‘l’, ‘o’}; String str = new String(charArray); System.out.println(str); /…

    Java 2023年5月26日
    00
  • 深入理解Java的Spring框架中的IOC容器

    深入理解Java的Spring框架中的IOC容器 什么是IOC IOC全称 Inversion of Control,即控制反转。它是一种设计模式,用于减少计算机程序的耦合,使程序更加灵活,易于维护和扩展。在计算机程序中,对象之间的关系很密切,一个对象依赖于另一个对象,如果硬编码这些关系,就会造成程序的耦合度很高,不容易维护和扩展。而控制反转就是将这些对象之…

    Java 2023年5月19日
    00
  • spring boot 默认异常处理的实现

    Spring Boot 默认的异常处理机制可以根据不同的异常类型,自动返回对应的 HTTP 状态码,同时输出异常信息,帮助我们快速定位错误。 默认情况下,无需显式配置,Spring Boot 就可以捕获控制器方法抛出的异常及一些框架内部异常。当异常被捕获后,Spring Boot 会根据异常类型来自动选择以下处理步骤: 如果是 HTTP 400 错误,返回 …

    Java 2023年5月27日
    00
  • Spring与Mybatis基于注解整合Redis的方法

    下面我将就“Spring与Mybatis基于注解整合Redis的方法”进行完整讲解,包含以下内容: 1.概述2.准备工作3.整合步骤4.示例说明5.结语 1.概述 Spring与Mybatis是一种非常流行的技术组合,受到了广泛的关注和使用。而Redis则是一种高性能、非关系型的内存数据库,用来作为缓存非常合适。针对这种情况,我们需要一种方法,将Spring…

    Java 2023年6月15日
    00
  • Java中的异常处理机制是什么?

    Java中的异常处理机制是通过try-catch语句块和throw抛出异常语句实现的。以下是Java中异常处理机制的详细步骤: 1. 什么是异常 在编写程序时,不可避免遇到一些非预期的错误,这些错误被成为异常。Java中的异常是一种对象,它用来信号某个方法出现了错误,有关这种错误的信息被封装在异常对象中并传递给调用该方法的程序。 2. 异常分类 Java中的…

    Java 2023年4月27日
    00
  • Java中String类(字符串操作)的10个常见问题和解决方法

    Java中String类的10个常见问题和解决方法 在Java中,String类是非常常见的引用类型,用于表示字符串。然而,由于String类的一些特性,我们在使用String类时可能会遇到一些问题。在本篇文章中,我们将讨论Java中String类的10个常见问题和解决方法。 1. 字符串比较 在Java中比较两个字符串应该使用equals()方法而不是’=…

    Java 2023年5月26日
    00
合作推广
合作推广
分享本页
返回顶部