MyBatis-Generator在Eclipse上配置及使用

2023-10-29

         之前用MyBatis框架的时候,都是手敲的代码,就感觉到好麻烦的样子。今天就到网上搜了一下MyBatis自动构建工具,就发现在官网上推荐了MyBatis Generator这个构建工具。官网推荐地址:http://mybatis.github.io/generator/index.html

         那接下来我就来详细介绍一下MyBatis Generator配置过程及其使用方法。

  • MyBatis-Generator配置:

            1. 安装MyBatis-Generator插件

1.1 首先,你得有MyBatis Generator这个插件。所以呢,离线安装MyBatis-Generator插件:                        下载地址:http://download.csdn.net/detail/wild_elegance_k/8999513

1.2 安装MyBatis-Generator插件:

           将下载的文件解压,将“features”、“plugins”拷贝到Eclipse的安装目录的相应目录中即可。

        2. MyBatis-Generator的使用:

重启Eclipse,然后在项目中点右键,就能看到如图:

新建一个generatorConfig.xml 之后呢,接下来就要我们来对其进行配置了,那先来说一说在这个xml 文件中主要的配置项有哪些,或者说哪些配置项是我们必须要填的。
  1. jdbcConnection --- 数据库链接URL、用户名、密码
  2. javaModelGenerator---生成模型的包名和位置,就是mybatis 里面用的一些entity 类的存放路径配置
  3. sqlMapGenerator ---生成的映射文件报名和位置,就是对应mybatis 的写sql 语句的xml文件的存放路径配置
  4. javaClientGenerator---生成DAO的包名和位置,就是mybatis 里面dao 接口的存放路径
  5. table ---这个配置项是配置在项目中操作的数据库表

具体的配置的话,请看下面我的项目中的generator.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>
	<!-- 数据库驱动包位置 -->
	<classPathEntry
		location="D:\Applications\ProgrammingTools\maven\MavenRepository\mysql\mysql-connector-java\5.1.36\mysql-connector-java-5.1.36.jar" />
	<context id="context1">
	  	<commentGenerator>
	    	<!-- 是否去除自动生成的注释 true:是 : false:否 -->
	    	<property name="suppressAllComments" value="true"/>
 	 	</commentGenerator>
		<!-- 数据库链接URL、用户名、密码 -->
		<jdbcConnection driverClass="com.mysql.jdbc.Driver"
			connectionURL="jdbc:mysql://localhost:3306/ssm1" userId="root" password="root" />
		<!-- 生成模型的包名和位置 -->
		<javaModelGenerator targetPackage="com.yc.ssm.cinema.entity" targetProject="Cinema/src/main/java" />
		<!-- 生成的映射文件报名和位置 -->
		<sqlMapGenerator targetPackage="com.yc.ssm.cinema.mapper" targetProject="Cinema/src/main/java" />
		<!-- 生成DAO的包名和位置 -->
		<javaClientGenerator targetPackage="com.yc.ssm.cinema.dao" targetProject="Cinema/src/main/java" type="XMLMAPPER" />
		<!-- 要生成的那些表(更改tableName 和domainObjectName 就可以了) -->
		<table schema="ssm1" tableName="FILMINFO" domainObjectName="FilmInfo" enableCountByExample="false" enableUpdateByExample="false"
			enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false">
			<columnOverride column="FILMID" property="FILMID" />
			<columnOverride column="FILMNAME" property="FILMNAME" />
			<columnOverride column="TYPEID" property="TYPEID" />
			<columnOverride column="ACTOR" property="ACTOR" />
			<columnOverride column="DIRECTOR" property="DIRECTOR" />
			<columnOverride column="TICKETPRICE" property="TICKETPRICE" />
		</table>
		<table tableName="FILMTYPE" domainObjectName="FiplType" enableCountByExample="false" enableUpdateByExample="false"
			enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false">
			<columnOverride column="TYPEID" property="TYPEID" />
			<columnOverride column="TYPENAME" property="TYPENAME" />
		</table>
	</context>
</generatorConfiguration>

特别值得注意的是,一般我们用Eclipse的mybatis -generator插件时,都会是在项目中创建一个generatorConfig.xml 文件,所以在xml 文件中的targetProject="" 这一项需要配置的是项目的名字。但是我今天在配置时,我的项目名称叫Cinema,然后targetProject配置的targetProject="Cinema",然而这并没有什么用,在配置好之后点下面的按钮时,程序一直都是显示运行成功,但是在项目的包结构中却迟迟不见文件。所以这个配置项需要特别值得注意,后来各种找解决办法,终于找到了正确的配置项:

我就以javaModelGenerator配置为例:

<javaModelGenerator targetPackage="com.yc.ssm.cinema.entity" targetProject="Cinema/src/main/java" />

这个配置就是指定targetProject的路径为Cinema项目下的src/main/java包下面。


  • MyBatis-Generator使用:

配置好了之后,使用的时候就是一键操作的事:



这个时候如果能看到配置项中指定的包不再为空时,就意味着generate成功了。






本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MyBatis-Generator在Eclipse上配置及使用 的相关文章

随机推荐

  • Python爬虫理论

    目录 1 解析HTML格式 2 解析JSON格式 3 解析二进制格式 4 实战 1 解析HTML格式 解析HTML格式主要有以下几种方法 我们在之后的学习中重点关注前两种 1 lxml库 第三方库 支持HTML和XML格式解析 支持XPat
  • python matplotlib 使用总结

    1 绘制线图 import random import matplotlib pyplot as plt 构造x列表和y列表 x range 100 y random randint 1 10 for i in range 100 plt
  • 为什么晶振处加俩电容?

    晶振是晶体振荡器的简称 在电气上它可以等效成一个电容和一个电阻并联再串联一个电容的二端网络 电工学上这个网络有两个谐振点 以频率的高低分其中较低的频率是串联谐振 较高的频率是并联谐振 由于晶体自身的特性致使这两个频率的距离相当的接近 在这个
  • GCC生成静态库.a和动态库.so

    目录 一 静态库和动态库 1 1静态库 1 2动态库 二 GCC生成静态库和动态库 2 1准备过程 2 2静态库的使用 2 3动态库的使用 2 4静态库与动态库的比较 三 库的使用实例 1 代码 2 生成静态库 3 生成动态库 一 静态库和
  • 使用淘宝镜像解决npm下载慢的问题

    由于使用npm下载包的速度会非常慢 所以我们可以使用淘宝镜像来下载 例如下载http server 在后面加上 registry https registry npm taobao org 就会通过淘宝镜像来下载 npm install h
  • Linux报错:OSError: [Errno 28] No space left on device

    Traceback most recent call last File D02 py line 852 in
  • mac 10.13.6 升级至10.14.6再升级至12.4

    mac 10 13 6 升级至10 14 6再升级至12 4 前几天一个月薪35k的兄弟 给我推了一个人工智能学习网站 看了一段时间挺有意思的 包括语音识别 机器翻译等从基础到实战都有 很详细 分享给大家 大家及时保存 说不定啥时候就没了
  • 查看Mysql版本的四种方法

    1 D MySql bin gt mysql V mysql Ver 14 12 Distrib 5 0 51b for Win32 ia32 2 mysql gt status mysql Ver 14 12 Distrib 5 0 51
  • 华为计算机单位换算在哪里,单位换算

    教学目标 1 使学生进一步理解人民币单位间的十进关系 初步掌握基本的单位换算方法 2 通过教学 初步培养学生的动手操作能力和推理能力 3 培养学生的合作意识和应用意识 体验数学的价值 教学重点 初步理解人民币单位之间的换算关系 教学难点 正
  • 关于jquery获取input的value问题

    刚开始接触jquery 很多东西不熟悉 在用 id 来获得页面的input元素的时候 发现 id value不能取到值 后来终于在伟大的百度帮助下 找到了问题的原因 是一个jquery对象 而不是一个dom element value是do
  • Python continue 语句

    Python continue 语句跳出本次循环 而break跳出整个循环 continue 语句用来告诉Python跳过当前循环的剩余语句 然后继续进行下一轮循环 continue语句用在while和for循环中 Python 语言 co
  • 全面解析文件操作~快来深入学习~

    目录 1 为什么使用文件 2 什么是文件 2 1 程序文件 2 2 数据文件 2 3 文件名 3 文件的打开和关闭 3 1 文件指针 3 2 文件的打开和关闭 4 文件的顺序读写 4 1 对比一组函数 5 文件的随机读写 5 1 fseek
  • linux 文件及目录的基本操作

    文件的操作命令 1 显示指定目录和文件 ls eg ls l etc d 2 显示当前目录的名称 pwd eg pwd 3 进入 退出目录 cd eg cd etc 进入根目录下的etc目录 cd 退回到上一级目录 cd 退回到根目录 4
  • Scrum Master 面试题 – 你必须知道的22个Scrum基础知识

    以下的22个问题基本上涵盖了Scrum所涉及的内容 如果你能够正确回答出所有问题 那么你已经具备了作为一名Scrum Master的基本素质 当然 作为一名合格的Scrum Master 更重要的是你的经验 因为Scrum Master更多
  • 尺取法--例题模板详解

    尺取法 一种神奇的技巧 在Codeforces中显示它的算法名称叫做 two pointers 直译成中文的话叫双指针法 尺取法 顾名思义 像尺子一样取一段 尺取法通常是对数组保存一对下标 即所选取的区间的左右端点 然后根据实际情况不断地推
  • 细谈Vue中插槽Slots

    细谈Vue中插槽Slots 浅谈Vue中插槽Slots 1 默认插槽 2 后备内容 3 具名插槽 4 作用域插槽 5 代码实践 浅谈Vue中插槽Slots
  • Java中的SPI机制及接口多实现调用

    1 SPI机制 SPI 全称为 Service Provider Interface 是JDK内置的一种服务提供发现机制 SPI充分体现了面向接口编程的特点 系统内置接口方法 在实际运行中用户可以自定义实现类来满足不通的实现需求 SPI机制
  • Mybatis-plus接口绑定xml语句

    我们启动没有配置任何东西的时候的 报错 AbstractHandlerExceptionResolver java 194 org springframework web servlet mvc method annotation Exce
  • 搭建redis哨兵集群,master宕机后无法执行故障切换的解决方法

    最近在学习搭建redis哨兵集群时 遇到的一些问题 分享一下 首先说明一下 我是同一台虚拟机中开启3个redis实例 模拟主从集群 一个master端口为7001 2个slave端口为7002 7003 3个哨兵sentinel实例端口为2
  • MyBatis-Generator在Eclipse上配置及使用

    之前用MyBatis框架的时候 都是手敲的代码 就感觉到好麻烦的样子 今天就到网上搜了一下MyBatis自动构建工具 就发现在官网上推荐了MyBatis Generator这个构建工具 官网推荐地址 http mybatis github