MyBatis逆向工程,自动生成dao、实体类、mapper文件

利用mybatis generator 自动生成生成dao、实体类、mapper文件
这里介绍两种方法:
1、独立的文件夹的方式,脱离开发工具
2、基于开发工具的方式(Eclipse)
1、独立的文件夹的方式,脱离开发工具
基本步骤:
(方法有多种,这里的方法是脱离项目工程,利用命令行建立文件。后续可以按需复制进工程)

1、下载相应工具

2、依据相应数据库导入相应数据库连接jar包

3、编写generatorConfig.xml文件

4、命令行模式,进入lib文件夹

5、输入:java -jar mybatis-generator-core-1.3.2.jar -configfile generatorConfig.xml -overwrite

1、下载相应工具

2、依据相应数据库导入相应数据库连接jar包

工具解压缩后,进入lib目录,如果是mysql数据库,就导入mysql jar包,如果是sql server数据库,就导入sqljdbc jar包

3、编写generatorConfig.xml文件

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <!DOCTYPE generatorConfiguration
 3 PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
 4 "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
 5 <generatorConfiguration>
 6 <!-- 数据库驱动-->
 7 <classPathEntry location="sqljdbc4.jar"/>
 8 <context id="DB2Tables" targetRuntime="MyBatis3">
 9 <commentGenerator>
10 <property name="suppressDate" value="true"/>
11 <!-- 是否去除自动生成的注释 true:是 : false:否 -->
12 <property name="suppressAllComments" value="true"/>
13 </commentGenerator>
14 <!--数据库链接URL,用户名、密码 -->
15 <jdbcConnection driverClass="com.microsoft.sqlserver.jdbc.SQLServerDriver"
16 connectionURL="jdbc:sqlserver://106.15.227.55;databaseName=xxx" userId="sa" password="xxx">
17 </jdbcConnection>
18 <javaTypeResolver>
19 <property name="forceBigDecimals" value="false"/>
20 </javaTypeResolver>
21 <!-- 生成模型的包名和位置-->
22 <javaModelGenerator targetPackage="tsy.domain" targetProject="src">
23 <!-- enableSubPackages:是否让schema作为包的后缀 -->
24 <property name="enableSubPackages" value="true"/>
25 <!-- 从数据库返回的值被清理前后的空格 -->
26 <property name="trimStrings" value="true"/>
27 </javaModelGenerator>
28 <!-- 生成映射文件的包名和位置-->
29 <sqlMapGenerator targetPackage="tsy.mapping" targetProject="src">
30 <property name="enableSubPackages" value="true"/>
31 </sqlMapGenerator>
32 <!-- 生成DAO的包名和位置-->
33 <javaClientGenerator type="XMLMAPPER" targetPackage="tsy.IDao" targetProject="src">
34 <property name="enableSubPackages" value="true"/>
35 </javaClientGenerator>
36 <!-- 要生成的表 tableName是数据库中的表名或视图名 domainObjectName是实体类名-->
37 <table tableName="Message" domainObjectName="MessageModel"
38 enableCountByExample="false" enableUpdateByExample="false"
39 enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>
40 </context>
41 </generatorConfiguration>

路径不需要自行建立,系统生成时,自行建立。

4、命令行模式,进入lib文件夹

5、输入:java -jar mybatis-generator-core-1.3.2.jar -configfile generatorConfig.xml -overwrite

然后会在src目录下,看到所有文件!

2、基于开发工具的方式(Eclipse)

基本步骤:
1、创建一个简单的java工程
2、导入连接数据库的jar包和generator-core的jar包
3、编写generator-fonfig.xml配置文件
4、编写及运行main方法类
5、刷新工程
前两部较为简单,略。
目录结构如下:

3、编写generator-fonfig.xml配置文件

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <!DOCTYPE generatorConfiguration
 3 PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
 4 "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
 5
 6 <generatorConfiguration>
 7 <context id="SqlServerContext" targetRuntime="MyBatis3Simple"
 8 defaultModelType="flat">
 9 <property name="beginningDelimiter" value="`" />
10 <property name="endingDelimiter" value="`" />
11 <!-- 清除mybatis-generator的注释 -->
12 <commentGenerator>
13 <property name="suppressAllComments" value="true" />
14 </commentGenerator>
15 <!-- jdbcConnection -->
16
17 <jdbcConnection driverClass="com.microsoft.sqlserver.jdbc.SQLServerDriver"
18 connectionURL="jdbc:sqlserver://106.15.227.55;databaseName=xxx" userId="sa" password="xxx">
19 </jdbcConnection>
20
21 <!--指定生成的类型为java类型,避免数据库中number等类型字段 -->
22 <javaTypeResolver>
23 <property name="forceBigDecimals " value="false" />
24 </javaTypeResolver>
25 <!--自动生成的实体的存放包路径 -->
26 <javaModelGenerator targetPackage="com.ssm.domain"
27 targetProject="src">
28 <property name="trimStrings" value="true" />
29 </javaModelGenerator>
30 <!--自动生成的*Mapper.xml文件存放路径 -->
31 <sqlMapGenerator targetPackage="com.ssm.dao.xml"
32 targetProject="src" />
33 <!--自动生成的*Mapper.java存放路径 type: XMLMAPPER 采用的是xml方式, -->
34 <javaClientGenerator type="XMLMAPPER"
35 targetPackage="com.ssm.dao" targetProject="src" />
36
37
38
39 <!-- 需要生成代码的表名,每个表一个table节点如下 -->
40
41 <table tableName="StationInfo" domainObjectName="MessageModel"
42 enableCountByExample="false" enableUpdateByExample="false"
43 enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>
44
45
46
47 </context>
48 </generatorConfiguration> 

扩展: 配置文件的很多属性决定了生成的文件的内容以及格式(mapper注解还是xml?)等。具体需要用户查阅中文文档,详细了解。这里配置的是比较简介的一种
4、编写运行main方法类

 1 import java.io.File;
 2 import java.util.ArrayList;
 3 import java.util.List;
 4
 5 import org.mybatis.generator.api.MyBatisGenerator;
 6 import org.mybatis.generator.config.Configuration;
 7 import org.mybatis.generator.config.xml.ConfigurationParser;
 8 import org.mybatis.generator.internal.DefaultShellCallback;
 9
10 public class GEN {
11 public static void main(String[] args) {
12 try {
13 List<String> warnings = new ArrayList<String>();
14 boolean overwrite = true;
15 String genCfg = "generatorConfig.xml";
16 File configFile = new File(GEN.class.getResource(genCfg).getFile());
17 ConfigurationParser cp = new ConfigurationParser(warnings);
18 Configuration config = null;
19 config = cp.parseConfiguration(configFile);
20 DefaultShellCallback callback = new DefaultShellCallback(overwrite);
21 MyBatisGenerator myBatisGenerator = null;
22 myBatisGenerator = new MyBatisGenerator(config, callback, warnings);
23 myBatisGenerator.generate(null);
24 } catch (Exception e) {
25 e.printStackTrace();
26 }
27 }
28 }

运行(片刻后需要刷新工程,才能看到文件):

dao层:(名称叫做mapper。可以自行修改为dao,但是注意xml文件也要相应修改)

xml文件

实体类:

注意:  一般逆向工程不建议在正式项目里直接编写生成。   而是会新建一个简单的工程,导成相关文件,按需再复制进工程里。

原文地址:https://www.cnblogs.com/javalittlebird/p/12654924.html

时间: 2024-10-11 05:41:37

MyBatis逆向工程,自动生成dao、实体类、mapper文件的相关文章

mybatis genertor自动生成Dao+mapping+model

mybatis genertor自动生成Dao+mapping+model   [1]下载: 可参考:https://github.com/mybatis/generator/releases 解压之后的格式: [2]添加文件 打开lib文件 (1)新建generatorConfig..xml文件,内容见下(仅作参考,部分内容需自己修改): <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE gener

使用MyBatis-Gererator自动生成Dao.Model.Mapping相关文件

一.在MyEclipse中使用Maven项目下使用MyBatis-Gererator自动生成Dao.Model.Mapping相关文件 1.关于Mybatis-Generator的下载可以到这个地址:https://github.com/mybatis/generator/releases 2.查找能够匹配maven的下载配置文件,将匹配的相关文件配置到maven项目下的pom.xml文件中 3.复制以下二中的generatorConfig.xml文件,到myEclipse中创建的maven项目

Maven项目中,使用mybatis,根据数据库自动生成pojo实体类、dao、mapper

一.首先,用eclipse创建一个maven项目. 二.其次,在pom.xml文件下,加入如下插件配置: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.ap

MyEclipse自动生成hibernate实体类和配置文件攻略

步骤1:找到导航栏里面的window--showView然后输入db brower,打开数据库浏览窗口步骤2:在数据库浏览窗口里只有一个Myeclipse自带的数据库,该数据没有用,我们在空白的地方右键新建一个数据库填写数据库信息,包括连接方式,用户名,密码,和jdbc的配置一样,注意将oracle的jar包导进来 步骤3:数据库连接已经出现,我们可以连接上数据库了 步骤4:这时候我们回过头,新建一个java或javaEE项目,名字随便取,然后右键该项目,选择Myeclipse---add hi

Mybatis Generator代码自动生成(实体类、dao层、映射文件)

写了一段时间增删改查有点厌烦,自己找了下网上的例子鼓捣了下自动生成. 首先得有一个配置文件: generatorConfig.xml <?xml version="1.0" encoding="UTF-8"?><!DOCTYPE generatorConfiguration        PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"   

mybatis逆向工程--自动生成实体代码(mybatis-generator)

随便找个目录,  添加文件, 如图 主要是两个jar包,  generator的下载路径:   https://github.com/mybatis/generator/releases   驱动包随便找了 接下来看下配置文件, 直接贴出代码 <?xml version="1.0" encoding="UTF-8"?><!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD

MyBatis逆向工程自动生成代码

MyBatis逆向工程根据数据库表自动生成mapper.xml,entity类,mapper类,简直不要 太方便好嘛 下面贴上关键配置代码,以免以后找不到 generator.xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configurati

回顾一下MyBatis逆向工程——自动生成代码

前言 最近做的项目(SSM+Shiro)的数据库表已经创建完成,一共有15张表,如果我们一个个去写pojo/bean的代码以及各种sql语句的话未免太过麻烦而且很容易出错,这个时候我们就需要MyBatis逆向工程去为我们生成这些基本的东西.先来简单的了解一下什么是逆向工程 一 什么是逆向工程 官网解释浓缩版:MyBatis逆向工程需要用到的就是MyBatis官方提供的MyBatis Generator(MBG).MBG是MyBatis和iBATIS的代码生成器,它将为所有版本的MyBatis以及

使用MyBatis Generator自动生成DAO以及实体类

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-conf

使用IDEA自动生成Java实体类

在上一篇帖子里,我们已经通过idea连接上了数据库,这里,通过IDEA自带的功能来根据数据库字段生成POJO 1. 选中一张表,右键--->Scripted Extensions--->选择Generate POJOS.clj或者Generate POJOS.groovy,选择需要存放的路径,完成 这样生成的pojo有个问题,主键id类型是long,不是我们期望的 可以通过修改groovy脚本来实现,首先打开脚本目录: . 如下:可以看到脚本里面默认的包名和数据类型的定义: 把包名和数据类型修