IDEA中Maven的逆向工程

第一步:先导入依赖

<dependencies>
    <dependency>
        <groupId>org.mybatis</groupId>
        <artifactId>mybatis</artifactId>
        <version>3.5.5</version>
    </dependency>
    <dependency>
        <groupId>org.mybatis.generator</groupId>
        <artifactId>mybatis-generator-core</artifactId>
        <version>1.4.0</version>
    </dependency>
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>8.0.21</version>
    </dependency>
</dependencies>
    <build>
        <finalName>SpringMVCBasic</finalName>
        <!-- 添加mybatis-generator-maven-plugin插件 -->
        <plugins>
            <plugin>
                <groupId>org.mybatis.generator</groupId>
                <artifactId>mybatis-generator-maven-plugin</artifactId>
                <configuration>
                    <verbose>true</verbose>
                    <overwrite>true</overwrite>
                </configuration>
            </plugin>
        </plugins>
    </build>

第二步:配置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>

	<!--导入属性配置-->
	<!--<properties resource="classpath:generator.properties" />-->

	<!--指定特定数据库的jdbc驱动jar包的位置-->
	<classPathEntry location="H:\MavenWarehouse\MavenWarehouseMax\mysql\mysql-connector-java\5.1.39\mysql-connector-java-5.1.39.jar"/>

	<context id="scm_mysql_tables" targetRuntime="MyBatis3">
		<!-- 防止生成的代码中有很多注释,加入下面的配置控制 -->
		<commentGenerator>
			<property name="suppressAllComments" value="true" />
			<property name="suppressDate" value="true" />
		</commentGenerator>


 需要修改的地方
		<!--jdbc的数据库连接 -->
		<jdbcConnection
				driverClass="com.mysql.jdbc.Driver"
				connectionURL="jdbc:mysql://localhost:3306/graduationproject?useSSL=false"
				userId="root"
				password="******">
		</jdbcConnection>

		<!--类型处理器,在数据库类型和java类型之间的转换控制-->
		<javaTypeResolver >
			<property name="forceBigDecimals" value="false" />
		</javaTypeResolver>



		<!-- Model模型生成器,用来生成含有主键key的类,记录类 以及查询Example类
           targetPackage     指定生成的model生成所在的包名
           targetProject     指定在该项目下所在的路径
       -->
       
 需要修改的地方targetPackage
		<javaModelGenerator targetPackage="com.hz.bean"
							targetProject="src/main/java">
			<!-- 是否允许子包,即targetPackage.schemaName.tableName -->
			<property name="enableSubPackages" value="false"/>
			<!-- 是否对pojo添加构造函数 -->
			<property name="constructorBased" value="true"/>
			<!-- 建立的pojo对象是否不可改变,即生成的pojo对象不会有setter方法,只有构造方法 -->
			<property name="immutable" value="false"/>
			<!-- 是否对类CHAR类型的列的数据进行trim操作 -->
			<property name="trimStrings" value="true" />
		</javaModelGenerator>


需要修改的地方targetPackage
		<!-- sql mapper 映射配置文件 -->
		<sqlMapGenerator targetPackage="com.hz.DAO"
						 targetProject="src/main/resources">
			<property name="enableSubPackages" value="false" />
		</sqlMapGenerator>

		<!-- 生成易于使用的针对Model对象和XML配置文件 的代码
               type="ANNOTATEDMAPPER",生成Java Model 和基于注解的Mapper对象
               type="MIXEDMAPPER",生成基于注解的Java Model 和相应的Mapper对象
               type="XMLMAPPER",生成SQLMap XML文件和独立的Mapper接口
       -->
需要修改的地方targetPackage
		<javaClientGenerator type="XMLMAPPER"
							 targetPackage="com.hz.DAO"
							 targetProject="src/main/java">
			<property name="enableSubPackages" value="true" />
		</javaClientGenerator>


需要修改的地方tableName
		<!-- 数据表进行生成操作 schema:库名; tableName:表名;
            domainObjectName:对应的实体类
             enableSelectByExample(默认true):MyBatis3Simple为false,指定是否生成动态查询语句;
		     enableUpdateByPrimaryKey(默认true):指定是否生成按照主键修改对象的语句(即update);
		     enableDeleteByExample(默认true):MyBatis3Simple为false,指定是否生成动态删除语句;
		     enableCountByExample(默认true):MyBatis3Simple为false,指定是否生成动态查询总条数语句(用于分页的总条数查询);
        -->
		<table schema="" tableName="user" domainObjectName="User"
			   enableCountByExample="false" enableUpdateByExample="false"
			   enableDeleteByExample="false" enableSelectByExample="false"
			   selectByExampleQueryId="false">
		</table>
		<table schema="" tableName="useraddress" domainObjectName="UserAddress"
			   enableCountByExample="true" enableUpdateByExample="true"
			   enableDeleteByExample="true" enableSelectByExample="true"
			   selectByExampleQueryId="true">
		</table>

	</context>
</generatorConfiguration> 

启动Maven逆向工程生成Java代码

IDEA中Maven的逆向工程_第1张图片

你可能感兴趣的:(Maven)