鳄鱼笔记★如何在idea(intellij)社区版中使用mybatis中生成代码


本文目的:

因为idea(intellij)破解费力,且破解不久之后就会被和谐,故比较了社区版和专业版,发现区别不大,于是选择转战社区版idea,但是有些问题需要解决,比如 mybatis代码生成(如下,只需两步,轻松生成)当前使用为 springboot 2.5.6

maven 依赖

pom.xml
<plugin>
	<groupId>org.mybatis.generator</groupId>
	<artifactId>mybatis-generator-maven-plugin</artifactId>
	<version>1.3.2</version>
	<configuration>
		<configurationFile>src/main/resources/generatorConfig.xml</configurationFile>
		<verbose>true</verbose>
		<overwrite>true</overwrite>
	</configuration>
	<executions>
		<execution>
			<id>Generate MyBatis Artifacts</id>
			<goals>
				<goal>generate</goal>
			</goals>
		</execution>
	</executions>
	<dependencies>
		<dependency>
			<groupId>org.mybatis.generator</groupId>
			<artifactId>mybatis-generator-core</artifactId>
			<version>1.3.2</version>
		</dependency>
	</dependencies>
</plugin>

生成配置 xml档

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>
    <!--location 为本地 mysql jar 包地址,可去maven 仓库取-->
    <classPathEntry
            location="E:/develop_app/repository/mysql/mysql-connector-java/8.0.27/mysql-connector-java-8.0.27.jar"/>
    <context id="my" targetRuntime="MyBatis3">
        <commentGenerator>
            <property name="suppressDate" value="false"/>
            <property name="suppressAllComments" value="true"/>
        </commentGenerator>
        <!--以下为数据库链接 driverClass  connectionURL userId   password 需修改-->
        <jdbcConnection driverClass="com.mysql.cj.jdbc.Driver"
                        connectionURL="jdbc:mysql://10.42.216.114:3306/smell?useUnicode=true"
                        userId="root"
                        password="123456"/>
        <!-- 以下为实体类 地址 targetPackage  targetProject -->
        <javaModelGenerator targetPackage="com.tp.strive.smell.model"
                            targetProject="E:\TP\idea\smell_store\src\main\java">
            <property name="enableSubPackages" value="true"/>
            <property name="trimStrings" value="true"/>
        </javaModelGenerator>
        <!--以下为映射xml文件 路径地址 targetPackage  targetProject -->
        <sqlMapGenerator targetPackage="mapper"
                         targetProject="E:\TP\idea\smell_store\src\main\resources">
            <property name="enableSubPackages" value="true"/>
        </sqlMapGenerator>
        <!-- 以下为dao 接口路径地址 targetPackage  targetProject -->
        <javaClientGenerator targetPackage="com.tp.strive.smell.mapper"
                             targetProject="E:\TP\idea\smell_store\src\main\java" type="XMLMAPPER">
            <property name="enableSubPackages" value="true"/>
        </javaClientGenerator>
        <!--以下为数据库表 和实体类的对应关系 tableName 表名 domainObjectName 实体类类名  , mapper接口 和xml文件 会自动命名 -->
        <table tableName="smell_package_out" domainObjectName="SmellPackageOut"
               enableCountByExample="false" enableUpdateByExample="false"
               enableDeleteByExample="false" enableSelectByExample="false"
               selectByExampleQueryId="false">
            <!--<columnRenamingRule searchString="^D_"
                                replaceString=""/>-->
        </table>

    </context>
</generatorConfiguration>

执行

点击执行maven 的compile 功能,即可执行插件功能生成代码

缺点

一次只能生成一张表,且重复生成的时候会xml档不会覆盖,而是会把生成的文档写入到原来的文档中,造成方法重复(以上是本机环境下发生的问题)


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM