MySQL逆向工程
逆向工程是一种用来提取源代码或软件程序的技术,可以将数据库结构转换成可阅读的标准格式,从而了解数据库的内容。它的主要步骤有:首先识别每个数据库记录的内容,然后将记录转换为结构化的文本文档,最后将文档格式转换为其他格式,例如XML和JSON,以便在其他程序中使用。
如何实现
Step1: 下载mybatis插件
- 打开IDEA的设置
- 下载MybatisX(已安装)
Step2:向pom.xml导入依赖
- 导入依赖
根据自己mysql版本设定数据库驱动,例子用的是8.0.26.
<dependencies>
<!--mysql驱动-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.26</version>
</dependency>
</dependencies>
- 向插件中添加启动项
<build>
<plugins>
<!--mybatis代码自动生成插件-->
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.6</version>
<configuration>
<!--配置文件的位置-->
<configurationFile>GeneratorMapper.xml</configurationFile>
<verbose>true</verbose>
<overwrite>true</overwrite>
</configuration>
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.26</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
Step3:GeneratorMapper.xml
- 在项目下直接创建该文件
- 更改配置
1)根据数据库版本更改连接信息
2)更改文件路径(绝对路径)
eg:D:\IDEA\盈利宝\代码\day04\后端\ready\ready-04-mapper
\src\main\java(修改红色区域内路径)
<generatorConfiguration>
<!-- 指定连接数据库的JDBC驱动包所在位置,指定到你本机的完整路径 -->
<!-- <classPathEntry location="E:\mysql-connector-java-5.1.38.jar"/> -->
<!-- 配置table表信息内容体,targetRuntime指定采用MyBatis3的版本 -->
<context id="tables" targetRuntime="MyBatis3">
<!-- 抑制生成注释,由于生成的注释都是英文的,可以不让它生成 -->
<commentGenerator>
<property name="suppressAllComments" value="true"/>
</commentGenerator>
<!-- 配置数据库连接信息 -->
<jdbcConnection driverClass="com.mysql.cj.jdbc.Driver"
connectionURL="jdbc:mysql://localhost:3306/ylb"
userId="root"
password="root">
</jdbcConnection>
<!-- 生成model类,targetPackage指定model类的包名, targetProject指定生成的model放在哪个工程下面-->
<javaModelGenerator targetPackage="com.bjpowernode.api.model"
targetProject="D:\IDEA\盈利宝\代码\day04\后端\ready\ready-04-mapper\src\main\java">
<property name="enableSubPackages" value="false"/>
<property name="trimStrings" value="false"/>
</javaModelGenerator>
<!-- 生成MyBatis的Mapper.xml文件,targetPackage指定mapper.xml文件的包名, targetProject指定生成的mapper.xml放在eclipse的哪个工程下面 -->
<sqlMapGenerator targetPackage="mappers"
targetProject="D:\IDEA\盈利宝\代码\day04\后端\ready\ready-04-mapper\src\main\resources">
<property name="enableSubPackages" value="false"/>
</sqlMapGenerator>
<!-- 生成MyBatis的Mapper接口类文件,targetPackage指定Mapper接口类的包名, targetProject指定生成的Mapper接口放在eclipse的哪个工程下面 -->
<javaClientGenerator type="XMLMAPPER" targetPackage="com.bjpowernode.dataservice.mapper"
targetProject="D:\IDEA\盈利宝\代码\day04\后端\ready\ready-04-mapper\src\main\java">
<property name="enableSubPackages" value="false"/>
</javaClientGenerator>
<!-- 数据库表名及对应的Java模型类名 -->
<table tableName="b_product_info" domainObjectName="ProductInfo"
enableCountByExample="false"
enableUpdateByExample="false"
enableDeleteByExample="false"
enableSelectByExample="false"
selectByExampleQueryId="false"/>
<table tableName="b_bid_info" domainObjectName="BidInfo"
enableCountByExample="false"
enableUpdateByExample="false"
enableDeleteByExample="false"
enableSelectByExample="false"
selectByExampleQueryId="false"/>
<table tableName="b_income_record" domainObjectName="IncomeRecord"
enableCountByExample="false"
enableUpdateByExample="false"
enableDeleteByExample="false"
enableSelectByExample="false"
selectByExampleQueryId="false"/>
<table tableName="b_recharge_record" domainObjectName="RechargeRecord"
enableCountByExample="false"
enableUpdateByExample="false"
enableDeleteByExample="false"
enableSelectByExample="false"
selectByExampleQueryId="false"/>
<table tableName="u_user" domainObjectName="User"
enableCountByExample="false"
enableUpdateByExample="false"
enableDeleteByExample="false"
enableSelectByExample="false"
selectByExampleQueryId="false"/>
<table tableName="u_finance_account" domainObjectName="FinanceAccount"
enableCountByExample="false"
enableUpdateByExample="false"
enableDeleteByExample="false"
enableSelectByExample="false"
selectByExampleQueryId="false"/>
</context>
</generatorConfiguration>
Step4:启动
如果没有该插件,刷新几下。双击后等待加载,路径下没有显示对应文件,重启IDEA就好啦