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代码生成器有以下几种:
-
MyBatis Generator:用于生成MyBatis的Mapper接口、SQL映射文件以及Model实体类的代码。
-
Hibernate Tools:用于根据数据库表生成Hibernate的Entity实体类和对应的映射文件。
-
Spring Roo:一个开源的Java开发工具,可以通过命令行或者图形界面的方式生成Spring应用程序的各种代码。
-
JHipster:一个用于生成现代化Java和JavaScript应用程序的代码生成器,可以快速生成Spring Boot、Angular或者React等框架的代码。
-
Apache CXF Codegen:用于生成基于Apache CXF的Web服务的客户端和服务端的代码。
-
Velocity:一个Java模板引擎,可以通过模板文件生成各种Java代码。
-
JCodeModel:一个Java代码生成库,可以通过代码的方式生成Java代码。
以上是一些常见的Java代码生成器,根据具体需求可以选择合适的代码生成器来提高开发效率。
2.第二部分
- Lombok:用于减少Java类中的冗余代码。通过添加注解,Lombok可以自动生成Getter、Setter、equals、hashCode等方法,简化了Java类的编写过程。
这里主要介绍Mybatis 的代码生成:
org.mybatis.generator是一个流行的Java代码生成器,用于生成基于MyBatis框架的持久层代码。下面是使用org.mybatis.generator进行代码生成的一般步骤:
- 添加依赖:在项目的构建工具中,如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.增加配置文件:
在这里插入代码片
- 配置生成器:创建一个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&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&characterEncoding=UTF-8&useSSL=false&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>
-
定义表映射关系:在配置文件中定义数据库表与Java实体类的映射关系。可以指定实体类的包名、名称规则、字段映射等。
支持联合主键等形式。 -
运行生成器:在代码中调用org.mybatis.generator的API,传入配置文件的路径,并运行生成器。生成器将读取配置文件,并根据配置生成对应的Java实体类、Mapper接口和XML映射文件。
- 查看生成结果:生成器将根据配置生成代码文件,并将其保存在指定的目录中。用户可以打开生成的文件,查看生成的代码,并将其集成到项目中。
这里会生成对应的文件,控制台会输出的。
需要注意的是,org.mybatis.generator还支持许多其他高级配置,如插件的使用、自定义注释、代码生成规则等。您可以根据具体需求查阅org.mybatis.generator的官方文档,了解更多详细的配置和使用方法。
参考资料和推荐阅读
参考资料
官方文档
开源社区
博客文章
书籍推荐
欢迎阅读,各位老铁,如果对你有帮助,点个赞加个关注呗!同时,期望各位大佬的批评指正~,如果有兴趣,可以加文末的交流群,大家一起进步哈