搭建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日

相关文章

  • Java中的InterruptedException是什么?

    InterruptedException 是 Java 中的异常类,它主要发生在一个正在等待某个时间或资源的线程被其他线程中断时,用于通知该线程所等待的操作已经无法继续。本文将详细讲解 Java 中的 InterruptedException,包括其用法、常见场景和示例说明。 用法 InterruptedException 继承自 Exception 类,通…

    Java 2023年4月27日
    00
  • 在Eclipse中在线安装Emmet和图文使用教程

    下面是在Eclipse中在线安装Emmet和图文使用教程的完整攻略: 在Eclipse中在线安装Emmet 打开Eclipse,点击菜单栏的“Help” -> “Eclipse Marketplace”; 在弹出的窗口搜索框中,输入“Emmet”,然后点击搜索按钮; 在搜索结果中,找到“Emmet – The Essential Toolkit for…

    Java 2023年6月15日
    00
  • java用户管理注册功能 含前后台代码

    下面是Java用户管理注册功能的完整攻略。 1. 前期准备 在编写Java用户管理注册功能的程序前,我们需要准备以下几个方面的内容:数据库、Java Web框架和IDE。 1.1 数据库 Java用户管理与注册功能需要使用到数据库进行用户信息存储。常用的数据库有MySQL、Oracle、SQL Server等。在本教程中,我们使用MySQL数据库。 我们需要…

    Java 2023年5月19日
    00
  • 解决SpringBoot项目启动后网页显示Please sign in的问题

    针对SpringBoot项目启动后网页显示Please sign in的问题,一般是因为Spring Security认证授权机制未配置或配置不正确所致,可以采取以下步骤进行解决: 第一步:检查pom.xml中是否添加Spring Security依赖 启动Spring Security需要添加spring-boot-starter-security依赖,检…

    Java 2023年5月20日
    00
  • java数组中的异常类型整理

    下面是”Java数组中的异常类型整理”的攻略: 1. 数组异常类型简介 在Java中,使用数组的过程中,会出现各种各样的异常情况。这些异常相关的类可以使用Java语言中提供的异常类来处理。 Java中的数组异常主要包括以下几种情况: ArrayIndexOutOfBoundsException,在访问数组下标超出数组范围时抛出。 NullPointerExc…

    Java 2023年5月26日
    00
  • SpringMVC接收与响应json数据的几种方式

    SpringMVC接收与响应json数据的几种方式 在SpringMVC中,我们可以使用多种方式来接收和响应JSON数据。本文将介绍其中的几种方式,并提供两个示例说明。 方式一:使用@RequestBody注解 使用@RequestBody注解可以将请求体中的JSON数据转换为Java对象。可以通过以下方式使用: @PostMapping("/us…

    Java 2023年5月17日
    00
  • java实现任意四则运算表达式求值算法

    实现任意四则运算表达式求值的算法,需要进行以下几个步骤: 词法分析:把表达式转化为一个个由运算符、操作数和括号组成的单词。 语法分析:根据单词列表构建语法树。 求值:根据语法树,对表达式进行求值计算。 接下来我们将详细讲解如何实现这些步骤。 1. 词法分析 词法分析将表达式转换为单词列表。单词包括运算符,操作数和括号。我们可以利用正则表达式对表达式进行拆分。…

    Java 2023年5月19日
    00
  • 深入讲解Java Maven配置

    下面是“深入讲解Java Maven配置”的完整攻略。 一、什么是Maven Apache Maven(简称Maven)是一个Java项目的管理和构建工具。它可以帮助开发人员自动化构建过程,生成具有标准目录结构的项目骨架以及管理项目依赖。使用Maven可以简化项目开发过程,节省时间和人力成本。 二、Maven的配置步骤 2.1 安装Maven 首先需要在官网…

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