常见的代码生成器使用

发布时间:2024年01月21日

Survive by day and develop by night.
talk for import biz , show your perfect code,full busy,skip hardness,make a better result,wait for change,challenge Survive.
happy for hardess to solve denpendies.

目录

概述

需求:

设计思路

实现思路分析

1.第一部分

常见的代码生成器使用:
常见的Java代码生成器有以下几种:

  1. MyBatis Generator:用于生成MyBatis的Mapper接口、SQL映射文件以及Model实体类的代码。

  2. Hibernate Tools:用于根据数据库表生成Hibernate的Entity实体类和对应的映射文件。

  3. Spring Roo:一个开源的Java开发工具,可以通过命令行或者图形界面的方式生成Spring应用程序的各种代码。

  4. JHipster:一个用于生成现代化Java和JavaScript应用程序的代码生成器,可以快速生成Spring Boot、Angular或者React等框架的代码。

  5. Apache CXF Codegen:用于生成基于Apache CXF的Web服务的客户端和服务端的代码。

  6. Velocity:一个Java模板引擎,可以通过模板文件生成各种Java代码。

  7. JCodeModel:一个Java代码生成库,可以通过代码的方式生成Java代码。

以上是一些常见的Java代码生成器,根据具体需求可以选择合适的代码生成器来提高开发效率。

2.第二部分

  1. Lombok:用于减少Java类中的冗余代码。通过添加注解,Lombok可以自动生成Getter、Setter、equals、hashCode等方法,简化了Java类的编写过程。

这里主要介绍Mybatis 的代码生成:
org.mybatis.generator是一个流行的Java代码生成器,用于生成基于MyBatis框架的持久层代码。下面是使用org.mybatis.generator进行代码生成的一般步骤:

  1. 添加依赖:在项目的构建工具中,如Maven或Gradle中,添加org.mybatis.generator的相关依赖项。
  <!--mybatise-generator-->
            <plugin>
                <groupId>org.mybatis.generator</groupId>
                <artifactId>mybatis-generator-maven-plugin</artifactId>
                <version>1.3.2</version>
                <configuration>
                    <!--在此处指定配置文件位置-->
                    <configurationFile>src/main/resources/generatorConfig/generatorConfig.xml</configurationFile>
                    <verbose>true</verbose>
                    <overwrite>true</overwrite>
                </configuration>
                <!--mybatise-generator-->
                <dependencies>
                    <!--在此处引入所需依赖-->
                    <dependency>
                        <groupId>org.mybatis.generator</groupId>
                        <artifactId>mybatis-generator-core</artifactId>
                        <version>1.3.2</version>
                    </dependency>
                    <!--<dependency>-->
                        <!--<groupId>mysql</groupId>-->
                        <!--<artifactId>mysql-connector-java</artifactId>-->
                        <!--<version>5.1.44</version>-->
                    <!--</dependency>-->

                    <dependency>
                        <groupId>mysql</groupId>
                        <artifactId>mysql-connector-java</artifactId>
                        <version>8.0.17</version>
                    </dependency>
                </dependencies>
            </plugin>

2.增加配置文件:

在这里插入代码片
  1. 配置生成器:创建一个MyBatis Generator配置文件(通常是一个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>
    <!--注意这里的targetRuntime="MyBatis3Simple",指定了不生成Example相关内容-->
    <context id="MysqlTables" targetRuntime="MyBatis3Simple">

        <commentGenerator>
            <property name="suppressDate" value="true"/>
            <!-- 是否去除自动生成的注释 true:是 : false:否 -->
            <property name="suppressAllComments" value="true"/>
        </commentGenerator>

        <!-- jdbc链接信息 -->
        <!--<jdbcConnection driverClass="com.mysql.jdbc.Driver"-->
                        <!--connectionURL="jdbc:mysql://192.168.2.42:3306/pj?useUnicode=true&amp;characterEncoding=UTF-8"-->
                        <!--userId="root" password="密码">-->
        <!--</jdbcConnection>-->

        <jdbcConnection driverClass="com.mysql.cj.jdbc.Driver"
                        connectionURL="jdbc:mysql://192.168.2.42:3306/pj?useUnicode=true&amp;characterEncoding=UTF-8&amp;useSSL=false&amp;serverTimezone=UTC"
                        userId="root" password="密码">
        </jdbcConnection>


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

        <!-- 生成PO类的位置 -->
        <javaModelGenerator targetPackage="me.njyd.po"
                            targetProject="src/main/java">
            <property name="enableSubPackages" value="true"/>
            <property name="trimStrings" value="true"/>
        </javaModelGenerator>

        <!-- mapper映射文件生成的位置 -->
        <sqlMapGenerator targetPackage="mapper.system"
                         targetProject="src/main/resources">
            <property name="enableSubPackages" value="true"/>
        </sqlMapGenerator>

        <!-- mapper接口生成的位置 -->
        <javaClientGenerator type="XMLMAPPER"
                             targetPackage="me.njyd.modules.system.mapper"
                             targetProject="src/main/java">
            <property name="enableSubPackages" value="true"/>
        </javaClientGenerator>

        <!-- 指定要生成的表,主鍵,po类名 -->
        <table tableName="cash" domainObjectName="Tcash">
            <property name="useActualColumnNames" value="true"/>
            <generatedKey column="a_id" sqlStatement="MySql" identity="true"/>
        </table>

    </context>
</generatorConfiguration>
  1. 定义表映射关系:在配置文件中定义数据库表与Java实体类的映射关系。可以指定实体类的包名、名称规则、字段映射等。
    支持联合主键等形式。

  2. 运行生成器:在代码中调用org.mybatis.generator的API,传入配置文件的路径,并运行生成器。生成器将读取配置文件,并根据配置生成对应的Java实体类、Mapper接口和XML映射文件。

在这里插入图片描述

  1. 查看生成结果:生成器将根据配置生成代码文件,并将其保存在指定的目录中。用户可以打开生成的文件,查看生成的代码,并将其集成到项目中。

这里会生成对应的文件,控制台会输出的。

需要注意的是,org.mybatis.generator还支持许多其他高级配置,如插件的使用、自定义注释、代码生成规则等。您可以根据具体需求查阅org.mybatis.generator的官方文档,了解更多详细的配置和使用方法。

参考资料和推荐阅读

参考资料
官方文档
开源社区
博客文章
书籍推荐

欢迎阅读,各位老铁,如果对你有帮助,点个赞加个关注呗!同时,期望各位大佬的批评指正~,如果有兴趣,可以加文末的交流群,大家一起进步哈

文章来源:https://blog.csdn.net/xiamaocheng/article/details/135735642
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。