用AI生成mybatis的mapper及xml等代码

有AI现在是方便多了,写这些DAO的文件非常费时间,可用插件生成代码,也可以用AI生成。例如用kimi,执行以下任务,可以进行较好的输出。

输入:

根据以下的表结构生成mybatis的java实体文件(所在包名为com.spell.mapper.do),mapper文件(所在包名为com.mapper.dao)、xml配置文件(所在的路径为mabatis.mapper)
CREATE TABLE `users` (
  `user_id` bigint NOT NULL AUTO_INCREMENT,
  `name` varchar(255) NOT NULL,
  `age` int DEFAULT NULL,
  `gmt_create` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`user_id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci

输出:

根据提供的表结构,以下是生成的MyBatis Java实体文件、Mapper文件和XML配置文件的完整代码。这些文件将按照指定的包名和路径进行组织。

### **1. Java实体类(User.java)**
**包名:** `com.spell.mapper.do`

```java
package com.spell.mapper.do;

import java.util.Date;

public class User {
    private Long userId;
    private String name;
    private Integer age;
    private Date gmtCreate;

    // Getters and Setters
    public Long getUserId() {
        return userId;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Integer getAge() {
        return age;
    }

    public void setAge(Integer age) {
        this.age = age;
    }

    public Date getGmtCreate() {
        return gmtCreate;
    }

    public void setGmtCreate(Date gmtCreate) {
        this.gmtCreate = gmtCreate;
    }

    // toString method
    @Override
    public String toString() {
        return "User{" +
                "userId=" + userId +
                ", name='" + name + '\'' +
                ", age=" + age +
                ", gmtCreate=" + gmtCreate +
                '}';
    }
}
```

### **2. Mapper接口(UserMapper.java)**
**包名:** `com.mapper.dao`

```java
package com.mapper.dao;

import com.spell.mapper.do.User;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;

import java.util.List;

@Mapper
public interface UserMapper {
    // 查询所有用户
    List<User> findAll();

    // 根据ID查询用户
    User findById(Long userId);

    // 插入用户
    int insert(User user);

    // 更新用户
    int update(User user);

    // 删除用户
    int delete(Long userId);
}
```

### **3. Mapper XML配置文件(UserMapper.xml)**
**路径:** `mybatis/mapper/UserMapper.xml`

```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 namespace="com.mapper.dao.UserMapper">

    <!-- 查询所有用户 -->
    <select id="findAll" resultType="com.spell.mapper.do.User">
        SELECT user_id, name, age, gmt_create
        FROM users
    </select>

    <!-- 根据ID查询用户 -->
    <select id="findById" parameterType="long" resultType="com.spell.mapper.do.User">
        SELECT user_id, name, age, gmt_create
        FROM users
        WHERE user_id = #{userId}
    </select>

    <!-- 插入用户 -->
    <insert id="insert" parameterType="com.spell.mapper.do.User">
        INSERT INTO users (name, age, gmt_create)
        VALUES (#{name}, #{age}, #{gmtCreate})
    </insert>

    <!-- 更新用户 -->
    <update id="update" parameterType="com.spell.mapper.do.User">
        UPDATE users
        SET name = #{name},
            age = #{age},
            gmt_create = #{gmtCreate}
        WHERE user_id = #{userId}
    </update>

    <!-- 删除用户 -->
    <delete id="delete" parameterType="long">
        DELETE FROM users
        WHERE user_id = #{userId}
    </delete>
</mapper>
```

### **4. MyBatis配置文件(mybatis-config.xml)**
**路径:** `mybatis/mybatis-config.xml`

```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.cj.jdbc.Driver"/>
                <property name="url" value="jdbc:mysql://localhost:3306/your_database_name?useSSL=false&amp;serverTimezone=UTC"/>
                <property name="username" value="your_username"/>
                <property name="password" value="your_password"/>
            </dataSource>
        </environment>
    </environments>
    <mappers>
        <mapper resource="mybatis/mapper/UserMapper.xml"/>
    </mappers>
</configuration>
```

### **5. 注意事项**
1. **数据库连接信息**:在`mybatis-config.xml`中,替换`your_database_name`、`your_username`和`your_password`为你的实际数据库连接信息。
2. **实体类字段映射**:确保实体类的字段与数据库表字段的类型一致。
3. **Mapper接口和XML文件**:Mapper接口中的方法名和XML文件中的`id`属性值需要保持一致。
4. **包名和路径**:确保实体类、Mapper接口和XML文件的包名和路径与项目结构一致。

通过以上步骤,你可以生成一个完整的MyBatis项目结构,包括实体类、Mapper接口和XML配置文件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值