mybatis generator 自动生成实体类,dao,以及对应的xml配置

1. 在pom.xml中添加mybatis generator插件

<plugin>
        <groupId>org.mybatis.generator</groupId>
        <artifactId>mybatis-generator-maven-plugin</artifactId>
        <version>1.3.5</version>
        <configuration>
          <verbose>true</verbose>
          <overwrite>true</overwrite>
        </configuration>
      </plugin>

2. resources目录下新建文件 generatorConfig.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>
    <!--导入属性配置-->
    <!--<properties resource="datasource.properties"/>-->

    <!--指定特定数据库的jdbc驱动jar包的位置-->
    <classPathEntry location="E:/Java/sqljdbc4.jar"/>

    <context id="default" targetRuntime="MyBatis3">

        <!-- optional,旨在创建class时,对注释进行控制 -->
        <commentGenerator>
            <property name="suppressDate" value="true"/>
            <property name="suppressAllComments" value="true"/>
        </commentGenerator>

        <!--jdbc的数据库连接 -->
        <jdbcConnection
                driverClass="com.microsoft.sqlserver.jdbc.SQLServerDriver"
                connectionURL="jdbc:sqlserver://10.2.130.93:1433;DatabaseName=stu"
                userId="sa"
                password="">
        </jdbcConnection>


        <!-- 非必需,类型处理器,在数据库类型和java类型之间的转换控制-->
        <javaTypeResolver>
            <property name="forceBigDecimals" value="false"/>
        </javaTypeResolver>
        <javaModelGenerator targetPackage="org.wing.entity" targetProject="./src/main/java">
            <!-- 是否允许子包,即targetPackage.schemaName.tableName -->
            <property name="enableSubPackages" value="false"/>
            <!-- 是否对model添加 构造函数 -->
            <property name="constructorBased" value="true"/>
            <!-- 是否对类CHAR类型的列的数据进行trim操作 -->
            <property name="trimStrings" value="true"/>
            <!-- 建立的Model对象是否 不可改变  即生成的Model对象不会有 setter方法,只有构造方法 -->
            <property name="immutable" value="false"/>
        </javaModelGenerator>
        <!--mapper映射文件生成所在的目录 为每一个数据库的表生成对应的SqlMap文件 -->
        <sqlMapGenerator targetPackage="mappers" targetProject="./src/main/resources">
            <property name="enableSubPackages" value="false"/>
        </sqlMapGenerator>
         <!-- targetPackage:mapper接口dao生成的位置 -->
        <javaClientGenerator type="XMLMAPPER" targetPackage="org.wing.dao" targetProject="./src/main/java">
            <!-- enableSubPackages:是否让schema作为包的后缀 -->
            <property name="enableSubPackages" value="false" />
        </javaClientGenerator>

        <table tableName="xslist" domainObjectName="StudentInfo" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false">
            <columnOverride column="ID" property="id"> </columnOverride>
            <columnOverride column="学号" property="studentNumber"></columnOverride>
            <columnOverride column="姓名" property="name"></columnOverride>
            <columnOverride column="性别" property="sex"></columnOverride>
            <columnOverride column="学院" property="institute"> </columnOverride>
            <columnOverride column="年级" property="grade"> </columnOverride>
            <columnOverride column="专业" property="professional"> </columnOverride>
            <columnOverride column="班级" property="team"> </columnOverride>
            <columnOverride column="在读情况" property="status"> </columnOverride>
            <columnOverride column="校区" property="campus"> </columnOverride>
            <columnOverride column="身份证号码" property="identityId"> </columnOverride>
            <columnOverride column="培养层次" property="educationLevel"></columnOverride>
            <columnOverride column="民族" property="nation"></columnOverride>
        </table>
    </context>
</generatorConfiguration>


运行这个插件后将在指定包下生成代码:




阅读更多

没有更多推荐了,返回首页