修改mybatis-config.xml , 增加 typeAliases 配置.

<configuration>
    <!--
    1. 如果一个包下有很多的类,我们可以直接引入包
    2. 这样该包下面的所有类名,可以直接使用
    -->
    <typeAliases>
        <package name="com.goodup.furns.bean"/>
    </typeAliases>
</configuration>

引入mybatis 逆向工程依赖包

 <dependency>
     <groupId>org.mybatis.generator</groupId>
     <artifactId>mybatis-generator-core</artifactId>
     <version>1.4.0</version>
 </dependency>

建表

create database furn_ssm;
use furn_ssm;

CREATE TABLE furn(
 `id` INT(11) PRIMARY KEY AUTO_INCREMENT,
 `name` VARCHAR(64) NOT NULL,
 `maker` VARCHAR(64) NOT NULL,
 `price` DECIMAL(11,2) NOT NULL,
 `sales` INT(11) NOT NULL,
`stock` INT(11) NOT NULL,
 `img_path` VARCHAR(256) NOT NULL
);
INSERT INTO furn(`id` , `name` , `maker` , `price` , `sales` , `stock` , `img_path`)
 VALUES(NULL , ' 北 欧 风 格 小 桌 子 ' , ' 熊 猫 家 居 ' , 180 , 666 , 7 ,
'assets/images/product-image/1.jpg');
 INSERT INTO furn(`id` , `name` , `maker` , `price` , `sales` , `stock` , `img_path`)
 VALUES(NULL , ' 简 约 风 格 小 椅 子 ' , ' 熊 猫 家 居 ' , 180 , 666 , 7 ,
 'assets/images/product-image/2.jpg');
 INSERT INTO furn(`id` , `name` , `maker` , `price` , `sales` , `stock` , `img_path`)
 VALUES(NULL , ' 典 雅 风 格 小 台 灯 ' , ' 蚂 蚁 家 居 ' , 180 , 666 , 7 ,
 'assets/images/product-image/3.jpg');
 INSERT INTO furn(`id` , `name` , `maker` , `price` , `sales` , `stock` , `img_path`)
 VALUES(NULL , ' 温 馨 风 格 盆 景 架 ' , ' 蚂 蚁 家 居 ' , 180 , 666 , 7 ,
 'assets/images/product-image/4.jpg');

 SELECT * FROM furn;

创建 mbg.xml ,参考https://mybatis.org/generator/ 进行配置

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE generatorConfiguration
        PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
        "https://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">

<generatorConfiguration>
    <context id="DB2Tables" targetRuntime="MyBatis3">
        <!--配置数据库连接信息-->
        <jdbcConnection driverClass="com.mysql.cj.jdbc.Driver"
                        connectionURL="jdbc:mysql://localhost:3306/furn_ssm?userSSL=true&amp;userUnicode=true&amp;characterEncoding=UTF-8"
                        userId="root"
                        password="123456">
        </jdbcConnection>

        <javaTypeResolver >
            <property name="forceBigDecimals" value="false" />
        </javaTypeResolver>

        <javaModelGenerator targetPackage="com.goodup.furns.bean" targetProject=".\src\main\java">
            <property name="enableSubPackages" value="true" />
            <property name="trimStrings" value="true" />
        </javaModelGenerator>
        <!--定sql映射文件生成的位置 -->
        <sqlMapGenerator targetPackage="mapper" targetProject=".\src\main\resources">
            <property name="enableSubPackages" value="true" />
        </sqlMapGenerator>
        <!--指定dao接口生成的位置, 也就是mapper接口-->
        <javaClientGenerator type="XMLMAPPER" targetPackage="com.goodup.furns.dao"  targetProject=".\src\main\java">
            <property name="enableSubPackages" value="true" />
        </javaClientGenerator>
        <!--指定要逆向生成的表和生成策略-->
        <table tableName="furn" domainObjectName="Furn" >
        </table>
    </context>
</generatorConfiguration>

创建MBGTest类,

Running MyBatis Generator With Java – MyBatis Generator Core

package com.goodup.mapper;


import org.mybatis.generator.api.MyBatisGenerator;
import org.mybatis.generator.config.Configuration;
import org.mybatis.generator.config.xml.ConfigurationParser;
import org.mybatis.generator.exception.InvalidConfigurationException;
import org.mybatis.generator.exception.XMLParserException;
import org.mybatis.generator.internal.DefaultShellCallback;


import java.io.File;
import java.io.IOException;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

public class MBGTest {
    public static void main(String[] args) {
        try {
            List<String> warnings = new ArrayList<String>();
            boolean overwrite = true;
            File file = new File("mbg.xml");
            ConfigurationParser cp = new ConfigurationParser(warnings);
            Configuration config = cp.parseConfiguration(file);
            DefaultShellCallback callback = new DefaultShellCallback(overwrite);
            MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config, callback, warnings);
            myBatisGenerator.generate(null);
        } catch (IOException e) {
            throw new RuntimeException(e);
        } catch (XMLParserException e) {
            throw new RuntimeException(e);
        } catch (InvalidConfigurationException e) {
            throw new RuntimeException(e);
        } catch (SQLException e) {
            throw new RuntimeException(e);
        } catch (InterruptedException e) {
            throw new RuntimeException(e);
        }
    }
}

然后运行,即可一键生成bean 对象 ,dao对象和XXXMapper.xml

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐