其实没有什么东西是可以自动生成的,只不过是别人已经写好了,你调用罢了。

所以想要mybatis自动生成java类,配置文件等,就必须要一些配置和一些jar包。当然这些配置也很简单。

为了有个初步的认识,首先我列出了所需要的文件:

其中标红的比较重要。好了,让我们开始吧

1.首先需要在数据库建好表,随便建几个就好。

2.下载mybatis-generator-core包

  下载地址:http://search.maven.org/

  然后搜索mybatis-generator-core下载即可

3.下载mysql-connector-java包

  想必大家这个包都很熟悉,因为它 就是mysql的java语言驱动包

  因为我们是根据数据库表来生产配置文件,当然需要连接到数据库了,那也就是需要驱动包了。

  下载地址:http://search.maven.org/

  然后搜索mysql-connector-java,选择需要的版本下载即可

4.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>
<!-- clas<font size="" color=""></font>sPathEntry:数据库的JDBC驱动 -->
<classPathEntry location="D:\study\spring-mvc-mybatis-maven\mysql-connector-java-5.0.3-bin.jar" /> <context id="DB2Tables" targetRuntime="MyBatis3">
<!-- 去除自动生成的注释 -->
<commentGenerator>
<property name="suppressAllComments" value="true" />
</commentGenerator>
<!-- 数据库的url 用户名 密码-->
<jdbcConnection driverClass="com.mysql.jdbc.Driver"
connectionURL="jdbc:mysql://localhost:3306/sy"
userId="root"
password="mysql">
</jdbcConnection> <javaTypeResolver >
<property name="forceBigDecimals" value="false" />
</javaTypeResolver> <!-- 生成模型的包名和位置:自动生成代码的位置, -->
<javaModelGenerator targetPackage="com.sy.model" targetProject="D:\study\spring-mvc-mybatis-maven\src">
<property name="enableSubPackages" value="true" />
<property name="trimStrings" value="true" />
</javaModelGenerator> <!-- 自动生成映射文件的包名和位置 -->
<sqlMapGenerator targetPackage="com.sy.mapping" targetProject="D:\study\spring-mvc-mybatis-maven\src">
<property name="enableSubPackages" value="true" />
</sqlMapGenerator>
<!-- 生成Dao 的包名和位置 -->
<javaClientGenerator type="XMLMAPPER" targetPackage="com.sy.dao" targetProject="D:\study\spring-mvc-mybatis-maven\src">
<property name="enableSubPackages" value="true" />
</javaClientGenerator> <!-- tableName:用于自动生成代码的数据库表;domainObjectName:对应于数据库表的javaBean类名 -->
<!-- 要生成那些表(更改tableName和domainObjectName就可以) -->
<table tableName="tbug" domainObjectName="Bug" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />
<table tableName="tmenu" domainObjectName="Menu" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />
<table tableName="tonline" domainObjectName="Online" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />
<table tableName="tresource" domainObjectName="Resource" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />
<table tableName="trole" domainObjectName="Role" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />
<table tableName="trole_tresource" domainObjectName="RoleResource" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />
<table tableName="tuser" domainObjectName="User" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />
<table tableName="tuser_trole" domainObjectName="UserRole" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />
</context> </generatorConfiguration>

generator.xml

  其中generator.xml文件里都有很详细的注释,大家一看就明白,我们需要做的有

  (1) 修改mysql驱动的路径,小编的路径如下:

    <classPathEntry location="D:\study\spring-mvc-mybatis-maven\mysql-connector-java-5.0.3-        bin.jar" />

  (2)修改  数据库的url 用户名 密码

  (3)修改保存自动生成文件的路径,小编的路径为

  <javaModelGenerator targetPackage="com.sy.model" targetProject="D:\study\spring-mvc-mybatis-  maven\src">

  这里大家可以建一个src空文件夹,然后把全路径复制覆盖小编的 路径即可。

  注:这里的model,mapper,dao三个路径都需要修改,否则就找不到路径了

5.好了,准备工作都做好了,一个命令即可生成

  首先cmd进入到generator.xml这个文件的路径下  如

  cd d:

  cd study\spring-mybatis-maven

  (win 7 下有快捷方式进入:

  在generator.xml目录下,单击右键:在此处打开命令窗口(W))

  运行命令:

  java -jar mybatis-generator-core-1.3.2.jar -configfile generator.xml -overwrite

是不是成功了?快去看看刚刚新建的src文件夹吧,看是不是已经有代码了。

  

  

  

mybatis怎样自动生成java类,配置文件?的更多相关文章

  1. Springboot mybatis generate 自动生成实体类和Mapper

    https://github.com/JasmineQian/SpringDemo_2019/tree/master/mybatis Springboot让java开发变得方便,Springboot中 ...

  2. java web(七): mybatis的动态sql和mybatis generator自动生成pojo类和映射文件

    前言: MyBatis 的强大特性之一便是它的动态 SQL.如果你有使用 JDBC 或其它类似框架的经验,你就能体会到根据 不同条件拼接 SQL 语句的痛苦.例如拼接时要确保不能忘记添加必要的空格,还 ...

  3. mybatis逆向工程自动生成实体类、接口以及映射Mapper.xml配置文件

    Mybatis的逆向工程非常简单,只要一个配置文件和一个Main方法就可以实现,下面以maven工程为例: (1)在pom.xml中引入依赖包 <dependency> <group ...

  4. mybatis generator自动生成 实体类, sqlmap配置文件 详细介绍

    我使用的是Eclipse Luna 装了自己常用的插件, generator也是其中一个推荐下载 MyBatis_Generator_1.3.1.zip离线安装包 <?xml version=& ...

  5. 利用MyBatis生成器自动生成实体类、DAO接口和Mapping映射文件

    1. mybatis-generator-core-1.3.5.jar 下载地址:https://github.com/mybatis/generator/releases 2. msyql-conn ...

  6. 运用Hibernate-Tools自动生成Java类和schema时,出现not found while looking for property...异常

    问题描述: 在使用Hibernate-tools时出现not found while looking for property...(具体信息省略). 问题分析: 我找到出错对应的hbm.xml文件, ...

  7. MyBatis代码自动生成(利用命令)

    这几天在学习springmvc,需要用到mybatis,所以研究了一下mybatis自动代码生成,当然也可以手动敲,但是那样效率非常的慢,并且出错率也是很高的,利用MyBatis生成器自动生成实体类. ...

  8. MyBatis代码自动生成

    MyBatis的代码自动生成的功能,由于MyBatis属于一种半自动的ORM框架,所以主要的工作就是配置Mapping映射文件,但是由于手写映射文件很容易出错,所以可利用MyBatis生成器自动生成实 ...

  9. 使用MyBatis Generator自动生成MyBatis的代码

    这两天需要用到MyBatis的代码自动生成的功能,由于MyBatis属于一种半自动的ORM框架,所以主要的工作就是配置Mapping映射文件,但是由于手写映射文件很容易出错,所以可利用MyBatis生 ...

随机推荐

  1. js删除数组中的 "NaN"

    [注意] js中的NaN不和任何值相等,包括自身 所以可以使用 x!=x 来判断x是否是NaN,当且仅当x为NaN时,表达式的结果为true NaN != NaN ; //true 可以依此删除数组中 ...

  2. pandas之美国2012年总统候选人政治献金数据分析

  3. day_07 深浅拷贝

    1. 基础数据类型的补充 1字符串的操作: 1.join 把字符串或者列表的的内拼接,拼接成字符串 和split相反--把字符串转换成列表 2.删除 字典和列表在循环中是不能进行删除的,可以在循环中把 ...

  4. tomcat故障——数据库未授权

  5. 多线程编程_读写锁ReadWriteLock

    Lock比传统线程模型中的synchronized方式更加面向对象,与生活中的锁类似,锁本身也应该是一个对象.两个线程执行的代码片段要实现同步互斥的效果,它们必须用同一个Lock对象. 读写锁:分为读 ...

  6. readline的用法

    with open(r'C:\Users\admin\pycdtest\wanyue\llduizhang_20180207\33_1517970821000304388_119061116',enc ...

  7. Unity 将一个类序列化并以 ".asset" 类型存储在 Resources 文件夹下

    概念: 序列化 (Serialization)将对象的状态信息转换为可以存储或传输的形式的过程.在序列化期间,对象将其当前状态写入到临时或持久性存储区.以后,可以通过从存储区中读取或反序列化对象的状态 ...

  8. (转)AIX 5.3 安装中文语言包

    AIX 5.3 安装中文语言包 原文:http://blog.51cto.com/lubby/571648 在AIX操作系统安装国内软件厂商使用的一些应用软件中,会涉及到一些中文乱码问题(我就是在部署 ...

  9. Nginx主主负载均衡架构

    在和一些朋友交流Nginx+Keepalived技术时,我虽然已成功多次实Nginx+Keepaived项目方案,但这些都是用的单主Nginx在工作,从Nginx长期只是处于备份状态,所以我们想将二台 ...

  10. mysql中操作符LIKE与通配符%的使用

    mysql中通配符%用来通配其他字符,操作符LIKE用来查询字段中存在相同的字符 SELECT t.userId,t.cellphone,t.idNo,t.* FROM t_person t WHER ...