Mybatis-generator的使用

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介:
+关注继续查看

一、核心文件generator.xml

指定数据库jar包位置、数据库连接信息、生成包的位置、表名等关键信息。该文件放在任意位置。


<!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">


<generatorConfiguration>

  <!-- 数据库的JDBC驱动的jar包地址 -->

  <classPathEntry location="F:\xy\jars\mysql-connector-java-5.0.7-bin.jar" />

  

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

 <!-- 是否去除自动生成的注释 -->

 <commentGenerator>

<property name="suppressAllComments" value="true" />

 </commentGenerator>

 

 <!-- 数据库连接的信息 -->

<jdbcConnection driverClass="com.mysql.jdbc.Driver"

connectionURL="jdbc:mysql://localhost:3306/db_MybatisTest" 

userId="root" password="mysqltest">

 </jdbcConnection>

 

 <!-- false:JDBC DECIMAL、NUMERIC类型解析为Integer,默认方式 -->

 <!-- true: JDBC DECIMAL、NUMERIC类型解析为java.math.BigDecimal -->

 <javaTypeResolver>

<property name="forceBigDecimals" value="false" />

 </javaTypeResolver>

 

 <!-- 生成模型的包名和位置 -->

 <javaModelGenerator targetPackage="com.xy.model" targetProject="F:\xy\mybatis-generator\src">

 <!-- 是否让schema作为包的后缀 -->

 <property name="enableSubPackages" value="true" />

 <!-- 从数据库返回的值被清理前后的空格 -->

 <property name="trimStrings" value="true" />

 </javaModelGenerator>

 

 <!-- 生成映射文件的包名和位置 -->

 <sqlMapGenerator targetPackage="com.xy.mapping"  targetProject="F:\xy\mybatis-generator\src">

  <property name="enableSubPackages" value="false" />

 </sqlMapGenerator>

 

 <!-- 生成DAO的包名和位置 -->

 <javaClientGenerator type="XMLMAPPER" targetPackage="com.xy.dao" targetProject="F:\xy\mybatis-generator\src">

<property name="enableSubPackages" value="true" />

 </javaClientGenerator>


 <!-- tableName:数据库表 -->

 <!-- domainObjectName:对应于数据库表的javaBean类名 -->

 <table tableName="t_student" domainObjectName="Student" enableCountByExample="false" 

enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false"  selectByExampleQueryId="false">

<!-- 忽略该字段(可省略) -->

<ignoreColumn column="name" />

 </table>

</context>

</generatorConfiguration>


二、table标签解析

①属性

schema即为数据库名,tableName为对应的数据库表,domainObjectName是要生成的实体类。

若要生成例子可将enableCountByExample等设为true, 就会生成一个对应domainObjectName的Example类,false则不生成,默认策略是true。

类似的还有enableUpdateByExample、enableDeleteByExample、enableSelectByExample、selectByExampleQueryId属性。


②子标签

若要对某些数据库字段进行操作,可以在table标签中加入如下标签

1、忽略某个字段 

<ignoreColumn column="name" />

2、无论数据库字段是何类型,生成的类属性都是varchar

<columnOverride column="LONG_VARCHAR_FIELD" jdbcType="VARCHAR" />


三、生成

mybatis-generator-core-1.3.2.jar是核心jar包,可在网上自行下载。命令窗口执行语句,执行成功后就会在generator.xml文件中指定的位置找到代码了。

java -jar F:\xy\jars\mybatis-generator-core-1.3.2.jar -configfile F:\xy\generator.xml -overwrite


四、总结

使用Mybatis Generator需要

①两个jar包——mybatis-generator-core-1.3.2.jar和数据库jar包

②一个配置文件generator.xml

③执行语句


五、注意事项

①generator.xml格式:必须是以UTF-8无BOM格式编码,用notepad++转换。

②注意数据库包的可用性,无效的数据库包转换会报错。

本文转自IT徐胖子的专栏博客51CTO博客,原文链接http://blog.51cto.com/woshixy/1423532如需转载请自行联系原作者


woshixuye111

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
10月前
|
XML Oracle Java
mybatis generator(MyBatis的逆向工程)
mybatis generator(MyBatis的逆向工程)
94 0
mybatis generator(MyBatis的逆向工程)
|
XML 数据库 数据格式
Mybatis-11-MybatisPlus Generator代码生成器
MybatisPlus也提供了代码生成器,并且更加厉害,能直接生成controller、service、mapper、xml等
160 0
Mybatis-11-MybatisPlus Generator代码生成器
|
Java 数据库连接 数据库
MyBatis - 三剑客之 Mybatis-Generator
MyBatis - 三剑客之 Mybatis-Generator
81 0
MyBatis - 三剑客之 Mybatis-Generator
|
SQL Java 数据库连接
MyBatis加强(1)~mybatis的代码生成器 Generator
MyBatis加强(1)~mybatis的代码生成器 Generator
218 0
MyBatis加强(1)~mybatis的代码生成器 Generator
|
XML Java 数据库连接
Java框架-MyBatis三剑客之MyBatis Generator(mybatis-generator MBG插件)详解(下)
Java框架-MyBatis三剑客之MyBatis Generator(mybatis-generator MBG插件)详解(下)
199 0
Java框架-MyBatis三剑客之MyBatis Generator(mybatis-generator MBG插件)详解(下)
|
Java 数据库连接 Maven
Java框架-MyBatis三剑客之MyBatis Generator(mybatis-generator MBG插件)详解(上)
Java框架-MyBatis三剑客之MyBatis Generator(mybatis-generator MBG插件)详解(上)
122 0
Java框架-MyBatis三剑客之MyBatis Generator(mybatis-generator MBG插件)详解(上)
|
Java 数据库连接 mybatis
Mybatis Generator的使用
在写代码过程中,常常要写一些简单的CURD操作,为了能够把时间用在业务逻辑上,看了Mybatis Generator生成工具,根据官网的文档,改成适合自己使用的生成器。 mybatis generator的配置文件 如下: <?xml version="1.
7023 0
|
关系型数据库 Java 数据库连接
MyBatis Generator的使用
对于自动生成这件事吧,我本人中立,一直没用过,主要是因为浅尝辄止,它生成的东西有些懒得看,用一下还是挺舒服的 自动生成的文件:mapper.xml 、model、dao 一、下载MyBatis Generator的核心jar包和配置文件   官网地址:http://repo1.
1514 0
|
XML 数据格式
优雅地使用 mybatis-generator
首先确保自动生成文件的配置信息 直接在 IDEA 中操作 gradle 的命令 生成成功 生成新文件后的项目结构 可多次执行,类会覆盖,但是设计 mapper 的 xm...
1232 0
|
XML Java 数据库连接
MyBatis Generator 用法详解
MBG全部指代MyBatis Generator MyBatis Generator 1.3.4 扩展,可以设置 Mapper(Dao)后缀 运行MyBatis Generator 有4种运行MBG的方法,具体请看文档 运行 MyBatis Generator MBG下载地址:http://repo1.
1738 0