idea创建mybatis最简易搭建

本文详细介绍了一个使用MyBatis框架进行数据库操作的实战案例,包括项目的搭建步骤、依赖配置、实体类定义、Mapper文件编写及测试类实现等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.新建项目

第一步,新建一个工程

42c5e193653246aaa2ea9fb808783202.png

2.创建一个maven项目,这里的依赖选择快速启动(quickstart)

885cc41b1ef14cb89214bc616f576066.png

3.在pom文件导入必要依赖,注意放在

<dependencies></dependencies>

里面

    <!--添加Mybatis框架的依赖-->
    <dependency>
      <groupId>org.mybatis</groupId>
      <artifactId>mybatis</artifactId>
      <version>3.5.2</version>
    </dependency>
    <!--添加mysql的依赖-->
    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>5.1.48</version>
    </dependency>
    <dependency>
      <groupId>org.projectlombok</groupId>
      <artifactId>lombok</artifactId>
      <version>1.18.24</version>
    </dependency>

 4.在main下面创建resource,如果下面没有三条杠,就右键,标志成resource文件夹d2e1fd8937624d8e8159c467594e6222.png

 5.创建pojo包,在下面创建实体类User.java

package pojo;

import lombok.Data;


@Data
public class User {
    private int u_id;
    private String u_name;
    private String u_pwd;
}

c8bdb455ca14478bba0f9c4096bbeab5.png

6.在resources下面写配置文件sqlMapConfig.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>
    <!--配置数据库的环境变量(数据库连接配置)-->
    <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/mybatis?useSSL=false&amp;useUnicode=true&amp;characterEncoding=UTF-8"/>
                <property name="username" value="root"/>
                <property name="password" value="root"/>
            </dataSource>
        </environment>
    </environments>
    <mappers>
        <mapper resource="UserMapper.xml"></mapper>
    </mappers>
</configuration>
        <!--注册mapper.xml文件-->


7.写mapper文件UserMapper.xml放在resource下

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">

<mapper namespace="test">
    <!--
        完成查询全部学生的功能
        List<User> getAll():
            resultType: 指定查询结果返回的结果集的类型,如果是集合,则必须使泛型的类型
            parameterType: 如果有参数,则通过它来指定参数的类型
    -->
    <select id="getAll" resultType="pojo.User">
        select * from users
    </select>

</mapper>

 这里有个爆红,没关系

8.写测试类Mytest.java

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 pojo.User;


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

public class MyTest {
    @Test
    public void testA() throws IOException {
        // 使用文件流读取核心配置文件sqlMapConfig.xml
        InputStream in = Resources.class.getResourceAsStream("/SqlMapConfig.xml");
        // 创建SqlSessionFactory工厂
        SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(in);
        // 取出sqlSession的对象
        SqlSession sqlSession = factory.openSession();
        // 完成查询操作
        List<User> list = sqlSession.selectList("test.getAll");
        System.out.println(list);
        // 关闭sql
        sqlSession.close();
    }
}

 到这里mybatis代码已经结束,再附加一个建库代码,建立一个库叫mybatis

/*
 Navicat Premium Data Transfer

 Source Server         : localhost_3306
 Source Server Type    : MySQL
 Source Server Version : 50738
 Source Host           : localhost:3306
 Source Schema         : mybatis

 Target Server Type    : MySQL
 Target Server Version : 50738
 File Encoding         : 65001

 Date: 07/12/2022 09:38:20
*/

SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;

-- ----------------------------
-- Table structure for users
-- ----------------------------
DROP TABLE IF EXISTS `users`;
CREATE TABLE `users`  (
  `u_id` int(20) NOT NULL,
  `u_name` char(20) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT NULL,
  `u_pwd` char(20) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT NULL,
  PRIMARY KEY (`u_id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_bin ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of users
-- ----------------------------
INSERT INTO `users` VALUES (1, 'zs', '123456');
INSERT INTO `users` VALUES (2, 'ls', '456789');
INSERT INTO `users` VALUES (3, 'ww', '789123');

SET FOREIGN_KEY_CHECKS = 1;

整个项目结构

3df52a406878423da31b97aa1baf290d.png

 

 

### 在 IntelliJ IDEA 2024 中设置 MyBatis 环境 #### 准备工作 确保已经安装并配置Java 开发环境以及 MySQL 数据库。对于数据库连接部分,可以参照如下 JDBC 配置[^3]: ```properties jdbc.driverClassName=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://localhost:3306/scattered-items jdbc.username=root jdbc.password=root ``` #### 创建 Maven 工程 通过 IntelliJ IDEA 新建一个 Maven Project 并导入必要的依赖项来构建 MyBatis 应用程序。 #### 添加 MyBatis 和 MySQL Connector 依赖 编辑 `pom.xml` 文件加入以下内容以便集成 MyBatis 及其所需的驱动: ```xml <dependencies> <!-- MyBatis core library --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.9</version> </dependency> <!-- MySQL connector for database access --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</scope> <version>8.0.26</version> </dependency> <!-- Other dependencies as needed... --> </dependencies> ``` #### 编写 MyBatis 配置文件 创建名为 `mybatis-config.xml` 的全局配置文件放置于资源目录下 (`src/main/resources`) ,用于定义数据源和其他核心组件的信息: ```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> <environments default="development"> <environment id="development"> <transactionManager type="JDBC"/> <dataSource type="POOLED"> <property name="driver" value="${jdbc.driverClassName}"/> <property name="url" value="${jdbc.url}"/> <property name="username" value="${jdbc.username}"/> <property name="password" value="${jdbc.password}"/> </dataSource> </environment> </environments> <mappers> <!-- Mapper XML files or interfaces go here --> </mappers> </configuration> ``` #### 实现 DAO 接口及其映射器 (Mapper) 按照业务逻辑需求设计相应的持久层接口,并编写对应的 SQL 映射语句存入 `.xml` 文件内;这些文件同样位于资源路径之下(`src/main/resources/mapper/`). 例如, 定义 UserDAO.java 如下: ```java public interface UserDAO { @Select("SELECT * FROM users WHERE id=#{id}") User selectUserById(int id); } ``` 关联的 mapper xml 文件 user-mapper.xml : ```xml <mapper namespace="com.example.dao.UserDAO"> <select id="selectUserById" resultType="com.example.model.User"> SELECT * FROM users WHERE id = #{id}; </select> </mapper> ``` 后不要忘记在 `mybatis-config.xml` 中注册此映射关系. #### 测试配置有效性 利用单元测试验证上述设定是否正常运作。可以通过 JUnit 或 TestNG 来执行简单的查询操作以确认一切就绪。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值