ssm之mybatis逆向工程(超详细)

我们先创建一个springboot项目
ssm之mybatis逆向工程(超详细)_第1张图片
下面可以根据自己的项目需求命名,我们这里只是一个例子,所以选择默认
ssm之mybatis逆向工程(超详细)_第2张图片
然后后面默认下一步,然后为项目取一个名字,在此我就保持默认,创建成功我们看一下目录结构
ssm之mybatis逆向工程(超详细)_第3张图片
下面我们看一下pom.xml文件
默认是有以下这些的
ssm之mybatis逆向工程(超详细)_第4张图片
下面我们添加依赖

 <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <scope>runtime</scope>
    </dependency>
    <dependency>
        <groupId>org.mybatis.generator</groupId>
        <artifactId>mybatis-generator-core</artifactId>
        <version>1.3.7</version>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <version>2.2.1.RELEASE</version>
        <scope>test</scope>
    </dependency>

把application.properties改为application.yml
然后我们修改我们的yml文件

spring:
  datasource:
    username: root
    password: root
    url: jdbc:mysql://localhost:3306/数据库名称?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf-8&useSSL=true
    driver-class-name: com.mysql.cj.jdbc.Driver

由于我使用的是MYSQL8.0所有最后userSSL=true,8.0以前的版本请改为false
下面我们需要配置XML文件

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE generatorConfiguration
        PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
        "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
<generatorConfiguration>
    <!-- 引入 application.yml -->
    <properties resource="application.yml" />
    <context id="DB2Tables"  targetRuntime="MyBatis3" defaultModelType="flat">
        <commentGenerator>
            <!-- 是否去除日期自动生成的注释 true:是 : false:-->
            <property name="suppressDate" value="true"/>
            <!-- 是否去除自动生成的所有注释 true:是 : false:-->
            <property name="suppressAllComments" value="true"/>
        </commentGenerator>
        <!--数据库链接URL,用户名、密码 -->
        <jdbcConnection driverClass="com.mysql.jdbc.Driver"
                        connectionURL="jdbc:mysql://localhost:3306/数据库名称?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai&useSSL=true"
                        userId="root"
                        password="root">
            <property name="nullCatalogMeansCurrent" value="true"></property>
        </jdbcConnection>

        <javaTypeResolver>
            <property name="forceBigDecimals" value="false"/>
        </javaTypeResolver>
        <!-- 生成模型的包名和位置-->
        <javaModelGenerator targetPackage="com.example.demo.entity" targetProject="src/main/java">
            <property name="enableSubPackages" value="false"/>
            <property name="trimStrings" value="true"/>
        </javaModelGenerator>
        <!-- 生成映射文件的包名和位置-->
        <sqlMapGenerator targetPackage="mapper" targetProject="src/main/resources">
            <property name="enableSubPackages" value="false"/>
        </sqlMapGenerator>
        <!-- 生成DAO的包名和位置-->
        <javaClientGenerator type="XMLMAPPER" targetPackage="com.example.demo.dao" targetProject="src/main/java">
            <property name="enableSubPackages" value="false"/>
        </javaClientGenerator>
        <!-- 要生成的表 tableName是数据库中的表名或视图名 domainObjectName是实体类名-->
        <table tableName="user_info" domainObjectName="UserInfo"></table>
    </context>
</generatorConfiguration>

你可以直接使用这个XML文件,但是你要修改几处信息
第一:数据库链接URL,用户名、密码
第二:生成模型的包名和位置
第三:生成DAO的包名和位置
第四:table表信息(这里的user_info是数据库表,UserInfo是需要生成的entity类)
下面我们需要一个执行文件

//这里我们需要修改new File()中的路径,根据自己实际情况修改
public static void main(String[] args) throws Exception, XMLParserException {
    List<String> warnings = new ArrayList<String>();
    boolean overwrite = true;
    File configFile = new File("D:\\Workspace\\workspace-java\\IDEA\\demo\\src\\main\\resources\\mybatis-generator.xml");
    ConfigurationParser cp = new ConfigurationParser(warnings);
    Configuration config = cp.parseConfiguration(configFile);
    DefaultShellCallback callback = new DefaultShellCallback(overwrite);
    MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config, callback, warnings);
    myBatisGenerator.generate(null);
}

运行后的结果多了一个entity,dao,mapper
然后再次设置yml文件

mybatis:
  mapper-locations: classpath:mapper/*.xml
  type-aliases-package: com.example.demo

然后我们修改DemoApplication
在这里插入图片描述
加入上面的注解和路径,到此我们的逆向工程就结束了。
ssm之mybatis逆向工程(超详细)_第5张图片

你可能感兴趣的:(JAVA)