在IDEA中使用MyBatis Generator自动生成代码
转载自 https://blog.csdn.net/hua_faded/article/details/78900780
一、配置Maven pom.xml 文件
在pom.xml增加以下插件:
- <build>
- <finalName>zsxt</finalName>
- <plugins>
- <plugin>
- <groupId>org.mybatis.generator</groupId>
- <artifactId>mybatis-generator-maven-plugin</artifactId>
- <version>1.3.2</version>
- <configuration>
- <verbose>true</verbose>
- <overwrite>true</overwrite>
- </configuration>
- </plugin>
- </plugins>
- </build>
配置好Maven插件,下面需要配置插件需要配置文件
二、在maven项目下的src/main/resources 目录下建立名为 Maven的项目配置文件存放路径如下图:generatorConfig.xml和generator.properties配置文件,
Maven的项目配置文件存放路径如下图:
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="generator.properties"></properties>
- <!--指定特定数据库的jdbc驱动jar包的位置-->
- <classPathEntry location="${jdbc.driverLocation}"/>
- <context id="default" targetRuntime="MyBatis3">
- <!-- optional,旨在创建class时,对注释进行控制 -->
- <commentGenerator>
- <property name="suppressDate" value="true"/>
- <property name="suppressAllComments" value="true"/>
- </commentGenerator>
- <!--jdbc的数据库连接 -->
- <jdbcConnection
- driverClass="${jdbc.driverClass}"
- connectionURL="${jdbc.connectionURL}"
- userId="${jdbc.userId}"
- password="${jdbc.password}">
- </jdbcConnection>
- <!-- 非必需,类型处理器,在数据库类型和java类型之间的转换控制-->
- <javaTypeResolver>
- <property name="forceBigDecimals" value="false"/>
- </javaTypeResolver>
- <!-- Model模型生成器,用来生成含有主键key的类,记录类 以及查询Example类
- targetPackage 指定生成的model生成所在的包名
- targetProject 指定在该项目下所在的路径
- -->
- <javaModelGenerator targetPackage="com.slx.zsxt.model"
- 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="com.slx.zsxt.mapper"
- targetProject="src/main/java">
- <property name="enableSubPackages" value="false"/>
- </sqlMapGenerator>
- <!-- 客户端代码,生成易于使用的针对Model对象和XML配置文件 的代码
- type="ANNOTATEDMAPPER",生成Java Model 和基于注解的Mapper对象
- type="MIXEDMAPPER",生成基于注解的Java Model 和相应的Mapper对象
- type="XMLMAPPER",生成SQLMap XML文件和独立的Mapper接口
- -->
- <javaClientGenerator targetPackage="com.slx.zsxt.dao"
- targetProject="src/main/java" type="XMLMAPPER">
- <property name="enableSubPackages" value="true"/>
- </javaClientGenerator>
- <table tableName="reguser" domainObjectName="User"
- enableCountByExample="false" enableUpdateByExample="false"
- enableDeleteByExample="false" enableSelectByExample="false"
- selectByExampleQueryId="false">
- </table>
- <table tableName="adminuser" domainObjectName="Admin"
- enableCountByExample="false" enableUpdateByExample="false"
- enableDeleteByExample="false" enableSelectByExample="false"
- selectByExampleQueryId="false">
- </table>
- <table tableName="configinfo" domainObjectName="Confinfo"
- enableCountByExample="false" enableUpdateByExample="false"
- enableDeleteByExample="false" enableSelectByExample="false"
- selectByExampleQueryId="false">
- </table>
- <table tableName="grade" domainObjectName="Grade"
- enableCountByExample="false" enableUpdateByExample="false"
- enableDeleteByExample="false" enableSelectByExample="false"
- selectByExampleQueryId="false">
- </table>
- <table tableName="gradelog" domainObjectName="Gradelog"
- enableCountByExample="false" enableUpdateByExample="false"
- enableDeleteByExample="false" enableSelectByExample="false"
- selectByExampleQueryId="false">
- </table>
- <table tableName="reginfo" domainObjectName="Reginfo"
- enableCountByExample="false" enableUpdateByExample="false"
- enableDeleteByExample="false" enableSelectByExample="false"
- selectByExampleQueryId="false">
- </table>
- </context>
- </generatorConfiguration>
generator.propertites代码如下:
- jdbc.driverLocation=E:\\mvn_home\\mysql\\mysql-connector-java\\5.1.20\\mysql-connector-java-5.1.20.jar
- jdbc.driverClass=com.mysql.jdbc.Driver
- jdbc.connectionURL=jdbc:mysql:///zsxt
- jdbc.userId=root
- jdbc.password=123456
三、在Intellij IDEA添加一个“Run运行”选项,使用maven运行mybatis-generator-maven-plugin插件
点击 菜单run中Edit Configurations,会出现
点击+号,选择maven,会出现
在name和Commond line分别填上如上图所示,apply和ok
最后点击generator,生成model,mapper,dao
逆向工程生成结果如下:
在IDEA中使用MyBatis Generator自动生成代码的更多相关文章
- idea中mybatis generator自动生成代码配置 数据库是sqlserver
好长时间没有写博客了,最近公司要用java语言,开始学习java,属于初学者,今天主要记录一下mybatis generator自动生成代码,首先在如下图的目录中新建两个文件,如下图 generato ...
- SpringBoot 添加mybatis generator 自动生成代码插件
自动生成数据层代码,提高开发效率 1.pom添加插件,并指定配置文件路径 <!-- mybatis generator 自动生成代码插件 --> <plugin> <gr ...
- SpringBoot入门篇--整合mybatis+generator自动生成代码+druid连接池+PageHelper分页插件
原文链接 我们这一篇博客讲的是如何整合Springboot和Mybatis框架,然后使用generator自动生成mapper,pojo等文件.然后再使用阿里巴巴提供的开源连接池druid,这个连接池 ...
- IDEA Maven Mybatis generator 自动生成代码
IDEA Maven Mybatis generator 自动生成代码 一.安装配置maven以及在Idea中配置maven 安装过程步骤可以看上面的博文,里面介绍得很详细. 二.建数据表 DROP ...
- IDEA Maven Mybatis generator 自动生成代码(实例讲解)(转)
IDEA Maven Mybatis generator 自动生成代码(实例讲解) MyBatis Generator • 简称MBG,是一个专门为MyBatis框架使用者定制的代码生成器,可以快速的 ...
- 使用Mybatis Generator自动生成代码
MyBatis Generator(MBG)是MyBatis MyBatis 和iBATIS的代码生成器.它将为所有版本的MyBatis以及版本2.2.0之后的iBATIS版本生成代码.它将内省数据库 ...
- Mybatis generator 自动生成代码(2)
最近准备开始做一个项目,需要开始手动创建sql,于是将Mybatis generator 工具功能强化了下. 首先,这里引入到版本一点的包 <dependency> <groupId ...
- IDEA使用mybatis generator自动生成代码
主要就三步: 1.pom 文件中引入jar包并配置 build 属性 <dependencies> <!-- 自动生产mapper Begin! --> <depende ...
- idea 中使用Mybatis Generator逆向工程生成代码
通过MAVEN完成 Mybatis 逆向工程 1. POM文件中添加插件 在 pom 文件的build 标签中 添加 plugin 插件和 数据库连接 jdbc 的依赖. <build> ...
随机推荐
- 自己封装一个弹窗JS
在我们平时的开发中,一定有很多地方需要用到弹窗提示功能.而系统自带的弹窗奇丑无比,而且我们不能自主控制.因此我们在开发过程中,自己封装一个弹窗JS方便我们使用. 代码demo如下: // JavaSc ...
- java工程师-面试知识点总结
目录(转载) [x] 一.Java基础(语言.集合框架.OOP.设计模式等) [x] 二.Java高级(JavaEE.框架.服务器.工具等) [x] 三.多线程和并发 [x] 四.Java虚拟机 [x ...
- jstack命令定位java程序CPU利用率高的代码位置
高手是怎么使用jstack精确找到异常代码的(java程序CPU利用率高的情况) 请jstack神器来帮忙 本文介绍Linux环境下使用jstack定位问题的秘笈1.[top命令]找到CPU利用率持续 ...
- # 20175227 2018-2019-2 《Java程序设计》第二周学习总结
20175227 2018-2019-2 <Java程序设计>第二周学习总结 教材学习内容总结 1. 根据蓝墨云上的学习视频,自学第二.三章知识,并自行编译调试书上程序. 2. 第二章主要 ...
- python之路——16
王二学习python的笔记以及记录,如有雷同,那也没事,欢迎交流,wx:wyb199594 学习内容 1.内置函数 1. python 数据类型:int bool 数据结构:dic list tupl ...
- TensorFlow 安装报错的解决办法(安装1.5版本)
1.安装Anaconda 百度下载windows版本,一路点下一步,安装好了Anaconda,自带python3.6.6. 2.安装TensorFlow (1)打开Anaconda Prompt,输入 ...
- Nios II Host-Based File System
Nios II Host-Based File System 允许运行在Nios II的程序,在Debug模式下,通过Altera download cable来读写PC上当前工程目录下(及其子目录) ...
- kubernetes学习笔记之十:RBAC
第一章.RBAC介绍 在Kubernetes中,授权有ABAC(基于属性的访问控制).RBAC(基于角色的访问控制).Webhook.Node.AlwaysDeny(一直拒绝)和AlwaysAllow ...
- linux 配置vue环境
系统 [root@Gao conf.d]# uname -a 工具 1.Final Shell 2.工具截图 需要下载的部分 node.js npm cnpm vue-cli 安装nod ...
- Android控件使用FragmentTabHost,切换Fragment;
大部分APP的主界面都很类似,要么底部导航的,要么就是侧滑菜单,还有底部导航+侧滑菜单的:底部导航实现大概有几种方式: TabHost+Fragment RadioGroup+Fragment Fra ...