LibrarySystem图书管理系统(三)

使用mybatis-generator自动生成代码


一、准备数据库




二、配置pom.xml

用maven mybatis插件  
如果不在plugin里面添加依赖包得引用的话,会找不到相关得jar包,  
在plugin外部得jar包,他不会去找到并执行,  
所以要把plugin运行依赖得jar配置都放在里面  

<!-- 逆向工程 mybatis-generator -->
        <plugin>
          <groupId>org.mybatis.generator</groupId>
          <artifactId>mybatis-generator-maven-plugin</artifactId>
          <version>${org.mybatis.generator.version}</version>
          <configuration>
            <verbose>true</verbose>
            <overwrite>true</overwrite>
          </configuration>
          <dependencies>
            <dependency>
              <groupId>org.mybatis</groupId>
              <artifactId>mybatis</artifactId>
              <version>${com.mybatis.mybatis.version}</version>
            </dependency>
            <dependency>
              <groupId>mysql</groupId>
              <artifactId>mysql-connector-java</artifactId>
              <version>${mysql.version}</version>
            </dependency>
          </dependencies>
        </plugin>


三、配置generatorConfig.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>

    <!-- 加载JDBC配置文件 -->
    <properties resource="jdbc.properties"/>

    <!-- context:生成一组对象的环境 -->
    <context id="MyBatis" targetRuntime="MyBatis3" defaultModelType="flat">

        <!-- beginningDelimiter和endingDelimiter:指明数据库的用于标记数据库对象名的符号,比如ORACLE就是双引号,MYSQL默认是`反引号; -->
        <property name="beginningDelimiter" value="`"/>
        <property name="endingDelimiter" value="`"/>

        <!-- 不生成注解 -->
        <commentGenerator>
            <!-- 这个元素用来去除指定生成的注释中是否包含生成的日期 false:表示保护 -->
            <!-- 如果生成日期,会造成即使修改一个字段,整个实体类所有属性都会发生变化,不利于版本控制,所以设置为true -->
            <property name="suppressDate" value="true" />
            <!-- 是否去除自动生成的注释 true:是 : false:否 -->
            <property name="suppressAllComments" value="true" />
        </commentGenerator>

        <!--数据库链接URL,用户名、密码 -->
        <jdbcConnection driverClass="${jdbc.driver}"
                        connectionURL="${jdbc.url}"
                        userId="${jdbc.username}"
                        password="${jdbc.password}">
        </jdbcConnection>

        <!-- java类型处理器 -->
        <!--<javaTypeResolver>-->
        <!-- This property is used to specify whether MyBatis Generator should
        force the use of java.math.BigDecimal for DECIMAL and NUMERIC fields, -->
        <!--<property name="forceBigDecimals" value="false" />-->
        <!--</javaTypeResolver>-->

        <!--  java模型创建器
                targetPackage:生成的类要放的包
                targetProject:目标项目,指定一个存在的目录下,生成的内容会放到指定目录中
        -->
        
        <!-- 生成模型的包名和位置 文件夹自己定义 -->
        <javaModelGenerator targetPackage="com.ray.entity"
                            targetProject="src/main/java">
            <!-- 在targetPackage的基础上,根据数据库的schema再生成一层package,最终生成的类放在这个package下,默认为false -->
            <property name="enableSubPackages" value="true" />
            <!-- 设置是否在getter方法中,对String类型字段调用trim()方法 -->
            <property name="trimStrings" value="true" />
        </javaModelGenerator>
        
        <!-- 生成映射文件的包名和位置 文件夹自己定义-->
        <sqlMapGenerator targetPackage="mapping"
                         targetProject="src/main/resources">
            <property name="enableSubPackages" value="true" />
        </sqlMapGenerator>
        
        <!-- 生成DAO的包名和位置 文件夹自己定义-->
        <javaClientGenerator type="XMLMAPPER"
                             targetPackage="com.ray.dao"
                             targetProject="src/main/java">
            <property name="enableSubPackages" value="true" />
        </javaClientGenerator>
        <!-- 要生成哪些表 , %表示生成全部的表-->
        <table tableName="%"
               enableCountByExample="false" enableUpdateByExample="false"
               enableDeleteByExample="false" enableSelectByExample="false"
               selectByExampleQueryId="false"></table>
    </context>
</generatorConfiguration>


四、执行生成代码

1、点击run->Edit configurations,如图:


2、之后弹出运行配置框,为当前配置配置一个名称,这里其名为"generator",然后在 “Command line” 选项中输入“mybatis-generator:generate -e”

这里加了“-e ”选项是为了让该插件输出详细信息,这样可以帮助我们定位问题。


3、配置完成后,点击run-》run generator,不出意外的话,在控制台中会出现BUILD SUCCESS的info信息。


五、项目结构


猜你喜欢

转载自blog.csdn.net/q343509740/article/details/80413410